• Home
  • SQL Server
    • Articles
    • T-SQL Puzzles
    • Output Puzzles
    • Interview Questions
    • Performance Tuning
    • SQL SERVER On Linux
    • Resources
  • SSRS
    • SSRS Articles
    • Interview Questions
  • SSAS
    • SSAS Articles
    • DAX
  • SQL Puzzles
  • Interview Questions
    • SQL Interview Questions
    • Data Interview Questions
  • Python Interview Puzzles
  • New Features(SQL SERVER)
    • SQL SERVER 2017
    • SQL SERVER 2016
    • SQL SERVER On Linux
  • Social
    • Expert Exchange
      • Top Expert in SQL
      • Yearly Award
      • Certifications
      • Achievement List
      • Top Expert of the Week
    • HackerRank (SQL)
    • StackOverflow
    • About Me
      • Contact Me
      • Blog Rules

Improving my SQL BI Skills

Improving my SQL BI Skills

Daily Archives: June 23, 2016

SQL Puzzle | Biggest Prime Number Divisor of an Input Number

23 Thursday Jun 2016

Posted by Pawan Kumar Khowal in SQL SERVER, T SQL Puzzles, Tricky SQL Queries

≈ 1 Comment

Tags

Advanced SQL Interview Questions and Answers, Advanced SQL tutorial pdf, any recommended websites for sql puzzles, Best SQL Puzzles, Buy SQL Server Interview Questions Book Online at Low Price, Calculating nth Max salary, Check Prime Number puzzle, Circular prime number puzzle, Circular Prime Number Puzzlre, COmples tSQL puzzles, Complex SQL Challenges, complex sql statement(puzzle), Complex tsql, Complex TSQL Challenge, Divide rows into two columns, Download SQL Questions, Download SQL Server Interview Question in PDF, Download SQL SERVER Interview questions, Download SQL Server Interview questions and answers, download sql server interview questions and answers pdf, download sql server interview questions by Pawan Khowal, download sql server interview questions by Pawan Kumar, download sql server interview questions by Pawan Kumar Khowal, Download T-SQL Interview Questions, Even Odd Count Puzzle, Excellent t-SQL puzzles, Find nth highest salary, Find Nth maximum value in SQL Server, find records not ending with s, find records not ending with s puzzle, Finding prime numbers with SQL server, Free Download SQL SERVER Interview questions, Generate possible combinations puzzle, Get nth highest and lowest salary of an employee, implementation and administration, Improve SQL Skills, Interesting Interview Questions, Interview Puzzles in SQL Server, Interview Qs.SQL SERVER Questions, Interview questions and Answers for MS SQL Server designing, Interview Questions and Answers For SQL, Interview questions on Joins, Interview Questions on SQL, Interview SQL Puzzles, InterviewQuestions, InterviewQuestions for SQL, Joins, Joins Interview questions, Joins Puzzle, Khowal, last non null puzzle, Learn complex SQL, Learn SQL, Learn T-SQL, Microsoft SQL Server interview questions for DBA, MS SQL Server interview questions, MSBI Interview Questions, Multiple Column Pivoting Puzzle, Multiplication of Digits Puzzle, Multiply digits of a number, multiply digits of a number puzzle, nth maximum & minimum salary in a single sql query, Objective Puzzle, Pawan, Pawan Khowal, Pawan Kumar, Pawan Kumar Khowal, PL/SQL Challenges, Prev Value puzzle, Previous value puzzle, Prime numbers after given number puzzle, Prime numbers using SQL, Program to Print prime numbers, Puzzle SQL, puzzle sql developer, Puzzle SQl Server, Puzzles, PUzzles in SQL SERVER, Queries for SQL Interview, Records not ending with a character Puzzle, Records not ending with s Puzzle, Replace string puzzle, SELECT Puzzle, Single Query multiple conditions puzzle, Smart Replace puzzle, Split & Count Puzzle, Split & count puzzle in SQL, Split and Count puzzle SQL Server, SQL, sql - How to find third or nth maximum salary from salary table?, SQL - The Pattern Puzzles, SQL 2012, SQL 2014, SQL 2014 Interview Questions, SQL Challenge, SQL Challenges, SQL Extreme Difficult Puzzle, SQL FAQ, SQL FAQs, SQL Interview Q & A, SQL Interview Questions, SQL Interview Questions - Part 2, SQL Interview Questions for SQL Professionals‎, SQL Joins, SQL Pattern Puzzles, SQL pl/sql puzzles, SQL prime number puzzle, SQL puzzle, SQL Puzzle | 2nd Highest Salary in Each Department using OffSet & Fetch Method, SQL Puzzle | Find Different Values Puzzle, SQL Puzzle | Get Weeks (Start Date - End Date) for a Month & Year, SQL Puzzle | Multiplication of Digits Puzzle, SQL Puzzle | Star Pattern Puzzle ( Fun with SQL ), SQL Puzzle | The Fiscal Puzzle - II, SQL Puzzle | The Middle 4 Puzzle, SQL Puzzle | The Time Difference Puzzle, SQL Puzzles, sql puzzles & answers, sql puzzles and answers free download, sql puzzles and answers pdf, sql puzzles for interview, sql puzzles oracle, SQL Queries, SQL Queries asked in interviews, SQL QUERY PUZZLES, SQL Query to Find Nth Highest Salary of Employee, SQL Questions, SQL Quiz, SQL Replace Puzzle, SQL Server - Common Interview Questions and Answers, SQL SERVER - Find Nth Highest Salary of Employee, SQL Server - General Interview Questions and Answers, sql server - How to find the nth highest salary in SQL?, sql server 2008 interview questions, SQL Server 2008 Interview Questions and Answers, SQL Server Database, SQL Server database developer interview questions and answers, sql server dba interview questions, SQL Server developer Interview questions and answers, SQL Server developer Interview questions with answers, SQL Server Developer T-SQL Interview Questions, SQL server filter index with LIKE and RIGHT function?, SQL SERVER Indexes, SQL Server Interview Puzzle, SQL SERVER Interview questions, SQL SERVER Interview questions & Answers, SQL Server Interview Questions - Part 1, SQL Server Interview questions and answers, SQL Server Interview Questions and Answers - Free PDF, SQL SERVER Interview questions and answers for experienced, sql server interview questions and answers for net developers, SQL Server Interview Questions And Answers.pdf, sql server interview questions by Pawan Khowal sql interview questions, SQL SERVER Interview questions pdf, SQL Server Interview Questions | MSBISKILLS.Com, SQL Server Interview Questions | MSBISKILLS.com Top 50 SQL Server Questions & Answers, SQL Server Interview Questions/Answers Part-1, SQL Server Puzzle, SQL SERVER Puzzles, SQL server Questions and Answers, SQL SERVER Tips, SQL Skills, SQL Sudoku, SQL Tips & Tricks, SQL Tips and Tricks, SQL Top clause, SQL Tough Puzzle, SQL Tricks, SQL Trikcy question, sql/database interview for puzzle sql developer, SQLBI Interview Questions, SQLSERVER, Star Pattern Puzzle, Sum of digits puzzle, Sum of digits SQL puzzle, T SQL Puzzles, T-SQL Challenge, T-SQL Interview Questions | SQL Server Interviews and Jobs, T-SQL Puzzle, T-SQL Query | [ Replace 6 Consecutive Digits with x from a string Puzzle ], T-SQL Query | [ The Complex Week Puzzle ], T-SQL Server Interview Questions, T-SQL Tricky Puzzles, The % percentage puzzle, The Biggest Gap Puzzle, The Gap Puzzle, The Gap Puzzle Puzzle, The In Puzzle, The InNotIn Puzzle, The Middle 4 Puzzle, The Middle 4 SQL Puzzle, The Multiple Sums Puzzle, The new rows count puzzle, The Prime Number Puzzle, The Replace Puzzle, The Time Difference Puzzle, The Tree Puzzle, The Update Puzzle, Top 10 Frequently Asked SQL Query Interview Questions, TOP 100 SQL SERVER INTERVIEW QUESTIONS QUERIES, Top 50 SQL Server Interview Question for Testers, TOP Clause, Tough SQL Challenges, Tough SQL Puzzles, Tricky Questions, TSQL, TSQL Challenge, TSQL Challenges, TSQL Interview questions, TSQL Puzzle, TSQL Puzzles, TSQL Queries, Week puzzle, [Solved] sql query for nth highest & lowest salary


SQL Puzzle | Biggest Prime Number Divisor of an Input Number

This is a variation in the Prime Puzzle . Here you have to find the biggest prime number divisor of an input number.

Divisor – The number you divide by. E.g.

dividend ÷ divisor = quotient

Example: in 12 ÷ 3 = 4, 3 is the biggest prime divisor for number 12.

For details please refer – https://www.mathsisfun.com/definitions/divisor.html

Please check out the sample input and the expected output below-

Sample Input

DECLARE @ INT = 39
( Biggest Prime Number Divisor for this input number )

Expected Output

Number
13

Solution 1


--



;WITH CTE AS
(
    SELECT DISTINCT Number FROM Master..Spt_Values WHERE Number > 1 AND Number  <= 1000 
) 
SELECT MAX(Number) Number FROM 
( 
      SELECT DISTINCT Number FROM MASTER..SPT_VALUES num 
       WHERE Number >= 2 AND Number <= 50 
       AND NOT EXISTS 
       ( 
                SELECT 1 FROM MASTER..SPT_VALUES AS num1 WHERE num1.Number > 1
		AND  num1.Number < num.Number
		AND  num.Number % num1.Number = 0
	)

)r
WHERE @ % Number = 0

--

Solution 2


--



DECLARE @ INT = 39

;WITH CTE AS
(
    SELECT DISTINCT Number FROM Master..Spt_Values 
    WHERE Number > 1 AND Number  <= 1000
)   
SELECT MAX(Number) Number 
FROM 
(

SELECT Number FROM CTE
EXCEPT
(
    SELECT ( F1.number * F2.number ) a
    FROM CTE AS F1, CTE AS F2
    WHERE
    F1.Number BETWEEN 2 AND CEILING (SQRT (1000))  
    AND F1.Number <= F2.Number
    AND (F1.Number * F2.Number) <= 1000
)

)r
WHERE @ % Number = 0


--

Other Prime Number related SQL Puzzle links-

Sr No SQL Server Puzzle
1 SQL Puzzle | 5 Prime Numbers above a given number
2 SQL Puzzle | The Circular Prime Numbers Puzzle
3 SQL Puzzle | Check Prime Number Puzzle
4 SQL Puzzle | The Prime Numbers Puzzle
5 SQL Puzzle | The Prime Number Puzzle – V

Add a comment if you have any other solution in mind. I would love to learn it. We all need to learn.

Enjoy !!! Keep Learning

Pawan Khowal 

Http://MSBISkills.com

Share this

  • LinkedIn
  • Facebook
  • Twitter
  • WhatsApp
  • Email

SQL Server Interview Questions – Set 10 (10 Questions )

23 Thursday Jun 2016

Posted by Pawan Kumar Khowal in Download SQL Interview Q's, SQL Concepts, SQL SERVER, SQL Server Interview Questions

≈ 1 Comment

Tags

Advanced SQL Interview Questions and Answers, Advanced SQL tutorial pdf, Download SQL Server Interview Question in PDF, Download SQL SERVER Interview questions, Download SQL Server Interview questions and answers, download sql server interview questions and answers pdf, download sql server interview questions by Pawan Khowal, download sql server interview questions by Pawan Kumar, download sql server interview questions by Pawan Kumar Khowal, Download T-SQL Interview Questions, Server Interview Questions Book, SQL Questions


SQL Server Interview Questions – Set 10 (10 Questions )

Sr No Download Download URL
16 SQL Server Interview Questions AND Answers [SET 10](10 Questions & Answers) Download

Question 1 : What is a CheckPoint?

Answer :

There are two built in automatic mechanisms SQL Server uses to scan the buffer cache periodically and writes any dirty pages to disk.
• The Lazy Writer
• Checkpoint process

Checkpoint

A checkpoint always writes out all pages that have changed (known as being marked dirty) since the last checkpoint, or since the page was read in from disk. It doesn’t matter whether the transaction that changed the page has committed or not. The page is written to disk regardless.

The goal of checkpoint is to reduce the amount of time Sql Server takes to perform rollforward and rollback operations.

The only exception is for tempDB, where data pages are not written to disk as part of a checkpoint. A checkpoint is only done for tempDB when the tempDB log file reaches 70% full – this is to prevent the tempDB log from growing if at all possible (note that a long-running transaction can still essentially hold the log hostage and prevent it from clearing, just like in a user database).

Checkpoint can be triggered from any of the below –

From a Manual Checkpoint


--


CheckPoint
GO


--

From a database or differential backup


--


ALTER DATABASE DBName SET TARGET_RECOVERY_TIME = target_recovery_time { SECONDS | MINUTES}
GO;


--

Automatically


--


EXEC [sp_configure] '[recovery interval]', 'seconds'
GO;

--

Example – Manual


--


CREATE TABLE tab 
(
	Id INT
)
GO

INSERT INTO tab VALUES (1), (2), (3)
GO


CHECKPOINT
GO


SELECT * FROM FN_DBLOG (NULL, NULL)
GO


--

Fn_db Log

Fn_db Log

Question 2 : What is a Lazy Writer?

Answer :

There are two built in automatic mechanisms SQL Server uses to scan the buffer cache periodically and writes any dirty pages to disk.
• The Lazy Writer
• Checkpoint process

The Lazy Writer

The function of LAZY WRITER is to release the buffer pool memory. When there is a memory pressure and more memory required e.g. for bringing in new pages to the cache. (Buffer Pool / Data Cache / Buffer Cache), Lazy writer releases the “coldest” pages from the buffer pool and makes more memory available for new pages to come in.

Cold Pages means least recently read or written, not accessed in recent time.

If lazy writer constantly has a lots of work to do, starting to purge pages that are not old at all you have a problem with buffer cache memory. You do not want page’s flow though the buffer cache like a free flowing water. You want them to stay there and be reused, read/written and rewritten again in-memory and not the disk which is slow compared to memory, as long as possible.

Question 3 : What is the difference between Lazy Writer and CheckPoint?

Answer :

They both write in-memory pages to the data files on the disk. But which pages, when, and do they release memory or not – there is the difference!

CHECKPOINT writes only dirty pages to the disk (dirty = changed in memory since the last checkpoint, not yet written/check pointed to disk), making them “clean”. Checkpoint does not release any memory, the pages STAY in memory, they are not removed from the buffer pool!

LAZY WRITER looks for least recently used (“cold” = least recently read or written, not accessed in recent time) pages in the buffer pool, and releases the memory taken by them. Lazy writer releases both dirty and clean pages. Clean pages can be released without writing to disk, but dirty pages must first be written to the disk (“flushed” to the disk and become “clean”) and then buffer pool memory can be released. So, total number of pages that lazy writer releases can be higher than the number of pages’ lazy writer writes to the data files, because “clean” pages can be released without writing them to disk. The final result of the lazy writer is less buffer pool memory used, therefore more memory available for the fresh pages in the buffer pool.

Checkpoint process is more efficient in writing to the disk because it can group subsequent pages into larger disk IOs, e.g. 128KB IO size. It internally uses WriteFileGather Windows API function.

Lazy writer can only write 8K pages. Therefore, checkpoint disk throughput is much better than lazy writer’s.

Question 4 : What is a Buffer Pool?

Answer :

A SQL Server buffer pool, also called an SQL Server buffer cache, is a place in system memory that is used for caching table and index data pages as they are modified or read from disk.

Pages are stored in buffers in a Buffer Pool. The buffers are hashed so that they can easily found by DB.

You can see what pages are currently in the buffer pool, and their status using the sys.dm_os_buffer_descriptors

Buffer Dscriptors

Buffer Dscriptors

Question 5 : What is a Log Flush?

Answer :

Log Flush also writes pages to disk. It writes pages from Log Cache into the Transactional log file (LDF). Once a transaction completes, Log Flush writes those pages (from Log Cache) to LDF file on disk.

Each and every transaction that results in data page changes, also incurs some Log Cache changes. At the end of each transaction (commit), these changes from Log Cache are flushed down to the physical file (LDF). So, in essence, the number of log flushes depend on number of transactions.

Note that SELECT statements do not result in any data page changes, so there are no changes to Log Cache, so no Log Flushes to Transactional Log file.

Question 6 : What is the Output of below statement?


--


CREATE TABLE Addy
(
	  ID SmallINT IDENTITY(1,1)
	, Name VARCHAR(5) DEFAULT 'Pawan'
	, 
)
GO

--

Answer :

You will not get any error when you execute the above statement. You will get “Command(s) completed successfully.”. This is a well know issue with the SQL Server.

Question 7 : Is there a way to Select Identity column without specifying Identity column name in the select list?

Answer :

I am not sure where we will get this kind of requirement. Yes, there are two ways to achieve this.

Solution 1 | IDENTITYCOL


--


CREATE TABLE Addy
(
	  ID SmallINT IDENTITY(1,1)
	, Name VARCHAR(5) DEFAULT 'Pawan'
	, 
)
GO

INSERT INTO Addy DEFAULT VALUES
GO 2

SELECT IDENTITYCOL, Name FROM Addy

--

Solution 2 | $IDENTITY


--


CREATE TABLE Addy1
(
	  ID SmallINT IDENTITY(1,1)
	, Name VARCHAR(5) DEFAULT 'Pawan'
	, 
)
GO

INSERT INTO Addy1 DEFAULT VALUES
GO 2

SELECT $IDENTITY, Name FROM Addy1


--

These are reserved words. Microsoft SQL Server uses reserved keywords for defining, manipulating, and accessing databases. Reserved keywords are part of the grammar of the Transact-SQL language that is used by SQL Server to parse and understand Transact-SQL statements and batches.

Although it is syntactically possible to use SQL Server reserved keywords as identifiers and object names in Transact-SQL scripts, you can do this only by using delimited identifiers.

Question 8 : What is the purpose of Resource DB in SQL Server?

Answer :

1. The Resource database is a read-only database that contains all the system objects that are included with SQL Server.

2. SQL Server system objects, such as sys.objects, are physically persisted in the Resource database, but they logically appear in the sys schema of every database.

3. The Resource database does not contain user data or user metadata.

4. The Resource database is used in upgrading to a new version of SQL Server an easier and faster procedure.

For details please refer below –

https://msbiskills.com/2015/09/07/sql-server-resource-database-deep-dive/

Question 9 : Provide Outputs of SQL Queries?


--


DECLARE @ NVARCHAR(6) = N'पवन'
SELECT @
GO


DECLARE @ NVARCHAR(6) = 'पवन'
SELECT @
GO


--

Answer :

Output of 1st Query –

पवन

Output of 2nd Query – The reason for this is we have not provided N before the initialization part.

???

Question 10 : What is a live lock? How it is different from Deadlock?

Answer :

A deadlock occurs when two processes compete for the same resources, but in an order which causes a stalemate. For example, A locks X, then tries to lock Y, while B has locked Y and tries to lock X. The key is that the two (or more) processes are preventing each other from doing anything.

A livelock occurs when there are overlapping shared locks that prevent another process from acquiring the exclusive lock it needs. The difference is that all of these overlapping processes continue to get their work done, so they are still “live” – only the victim is blocked until they are done. Which may be never on a busy enough, poorly designed system. 🙂 You may be able to overcome this situation by escalating the deadlock priority for your writers, but I’ll be honest, this isn’t a scenario I’ve seen very often, and I’ve worked with SQL Server since 2000.

That’s all folks; I hope you’ve enjoyed the article and I’ll see you soon with some more articles.

Thanks!

Pawan Kumar Khowal

Share this

  • LinkedIn
  • Facebook
  • Twitter
  • WhatsApp
  • Email

Blog Stats

  • 1,085,534 hits

Enter your email address to follow this blog and receive notifications of new posts by email.

Join 1,131 other subscribers

Pawan Khowal

502 SQL Puzzles with answers

Achievement - 500 PuzzlesJuly 18, 2018
The big day is here. Finally presented 500+ puzzles for SQL community.

200 SQL Server Puzzle with Answers

The Big DayAugust 19, 2016
The big day is here. Completed 200 SQL Puzzles today

Archives

June 2016
M T W T F S S
 12345
6789101112
13141516171819
20212223242526
27282930  
« May   Jul »

Top Articles

  • pawankkmr.wordpress.com/2…
  • pawankkmr.wordpress.com/2…
  • pawankkmr.wordpress.com/2…
  • pawankkmr.wordpress.com/2…
  • pawankkmr.wordpress.com/2…

Archives

  • October 2020 (29)
  • September 2018 (2)
  • August 2018 (6)
  • July 2018 (25)
  • June 2018 (22)
  • May 2018 (24)
  • April 2018 (33)
  • March 2018 (35)
  • February 2018 (53)
  • January 2018 (48)
  • December 2017 (32)
  • November 2017 (2)
  • October 2017 (20)
  • August 2017 (8)
  • June 2017 (2)
  • March 2017 (1)
  • February 2017 (18)
  • January 2017 (2)
  • December 2016 (5)
  • November 2016 (23)
  • October 2016 (2)
  • September 2016 (14)
  • August 2016 (6)
  • July 2016 (22)
  • June 2016 (27)
  • May 2016 (15)
  • April 2016 (7)
  • March 2016 (5)
  • February 2016 (7)
  • December 2015 (4)
  • October 2015 (23)
  • September 2015 (31)
  • August 2015 (14)
  • July 2015 (16)
  • June 2015 (29)
  • May 2015 (25)
  • April 2015 (44)
  • March 2015 (47)
  • November 2012 (1)
  • July 2012 (8)
  • September 2010 (26)
  • August 2010 (125)
  • July 2010 (2)

Article Categories

  • Analysis Services (6)
    • DAX (6)
  • Data (2)
    • Data warehousing (2)
  • Integration Services (2)
  • Magazines (3)
  • Python (29)
  • Reporting Services (4)
  • SQL SERVER (820)
    • Download SQL Interview Q's (212)
    • SQL Concepts (323)
    • SQL Performance Tuning (155)
    • SQL Puzzles (331)
    • SQL SERVER 2017 Linux (6)
    • SQL Server Interview Questions (308)
    • SQL SERVER Puzzles (332)
    • T SQL Puzzles (547)
    • Tricky SQL Queries (439)
  • UI (30)
    • ASP.NET (5)
    • C# (13)
    • CSS (9)
    • OOPS (3)
  • Uncategorized (5)

Recent Posts

  • Python | The Print and Divide Puzzle October 30, 2020
  • Python | Count consecutive 1’s from a list of 0’s and 1’s October 30, 2020
  • Python | How to convert a number into a list of its digits October 26, 2020
  • Python | Validate an IP Address-IPV6(Internet Protocol version 6) October 26, 2020
  • Python | Print the first non-recurring element in a list October 26, 2020
  • Python | Print the most recurring element in a list October 26, 2020
  • Python | Find the cumulative sum of elements in a list October 26, 2020
  • Python | Check a character is present in a string or not October 26, 2020
  • Python | Check whether a string is palindrome or not October 26, 2020
  • Python | Find the missing number in the array of Ints October 26, 2020
  • Python | How would you delete duplicates in a list October 26, 2020
  • Python | Check whether an array is Monotonic or not October 26, 2020
  • Python | Check whether a number is prime or not October 26, 2020
  • Python | Print list of prime numbers up to a number October 26, 2020
  • Python | Print elements from odd positions in a list October 26, 2020
  • Python | Print positions of a string present in another string October 26, 2020
  • Python | How to sort an array in ascending order October 26, 2020
  • Python | How to reverse an array October 26, 2020
  • Python | Find un-common words from two strings October 26, 2020
  • Python | How to convert a string to a list October 26, 2020
  • Python | Find unique words from a string October 26, 2020
  • Python | Calculate average word length from a string October 26, 2020
  • Python | Find common words from two strings October 26, 2020
  • Python | Find the number of times a substring present in a string October 26, 2020
  • Python | Find maximum value from a list October 26, 2020
  • Python | How to find GCF of two numbers October 26, 2020
  • Python | How to find LCM of two numbers October 26, 2020
  • Python | How to convert a list to a string October 26, 2020
  • Python | Replace NONE by its previous NON None value October 26, 2020
  • Microsoft SQL Server 2019 | Features added to SQL Server on Linux September 26, 2018

Create a website or blog at WordPress.com

  • Follow Following
    • Improving my SQL BI Skills
    • Join 231 other followers
    • Already have a WordPress.com account? Log in now.
    • Improving my SQL BI Skills
    • Customize
    • Follow Following
    • Sign up
    • Log in
    • Report this content
    • View site in Reader
    • Manage subscriptions
    • Collapse this bar
 

Loading Comments...
 

You must be logged in to post a comment.