SQL Interview Questions | Set 2 Last Updated : 21 Aug, 2025 Comments Improve Suggest changes 17 Likes Like Report Difference between Locking, Blocking and DeadlockingLocking: Locking occurs when a connection needs access to a piece of data in a database and it locks it for certain use so that no other transaction is able to access it.Blocking: Blocking occurs when a transaction tries to acquire an incompatible lock on a resource that another transaction has already locked. The blocked transaction remains blocked until the blocking transaction releases the lock.Deadlocking: Deadlocking occurs when two or more transactions have a resource locked, and each transaction requests a lock on the resource that another transaction has already locked. Neither of the transactions here can move forward, as each one is waiting for the other to release the lock.Delete duplicate data from table so that only first data remains constantManagersIdNameSalary1Harpreet200002Ravi300003Vinay100004Ravi300005Harpreet200006Vinay100007Rajeev400008Vinay100009Ravi3000010Sanjay50000Query:DELETE M1 from managers M1, managers M2 where M2.Name=M1.Name AND M1.Id>M2.Id;Output:IdNameSalary1Harpreet200002Ravi300003Vinay100007Rajeev4000010Sanjay50000Find the Name of Employees where First Name, Second Name, and Last Name is given in the table. Some Name is missing such as First Name, Second Name and maybe Last Name. Here we will use COALESCE() function which will return first Non Null values. EmployeesIDFNameSNameLNameSalary1HarpreetSingh300002AshuNULLRana500003NULLVinayThakur400004NULLVinayNULL100005NULLNULLRajveer600006ManjeetSinghNULL60000Query :SELECT ID, COALESCE(FName, SName, LName) as Name FROM employees;Output:Find the Employees who were hired in the Last n months Finding the Employees who have been hire in the last n months. Here we get desired output by using TIMESTAMPDIFF() mysql function EmployeesIDFNameLNameGenderSalaryHiredate1RajveerSinghMale300002017/11/052ManveerSinghMale500002017/11/053AshutoshKumarMale400002017/12/124AnkitaSharmaFemale450002017/12/155VijayKumarMale500002018/01/126DilipYadavMale250002018/02/267JayvijaySinghMale300002018/02/188ReenuKumariFemale400002017/09/199AnkitVermaMale250002018/04/0410HarpreetSinghMale500002017/10/10Query:Select *, TIMESTAMPDIFF(month, Hiredate, current_date()) as DiffMonth from employeeswhere TIMESTAMPDIFF(month, Hiredate, current_date()) between 1 and 5 order by Hiredate desc;Note: Here in query 1 and 5 are indicates 1 to n months which show the Employees who have hired last 1 to 5 months. In this query, DiffMonth is an extra column for our understanding which shows the Nth months. Output:Find the Employees who hired in the Last n daysFinding the Employees who have been hired in the last n days. Here we get desired output by using DATEDIFF() mysql function EmployeesIDFNameLNameGenderSalaryHiredate1RajveerSinghMale300002017/11/052ManveerSinghMale500002017/11/053AshutoshKumarMale400002017/12/124AnkitaSharmaFemale450002017/12/155VijayKumarMale500002018/01/126DilipYadavMale250002018/02/267JayvijaySinghMale300002018/02/188ReenuKumariFemale400002017/09/199AnkitVermaMale250002018/04/0410HarpreetSinghMale500002017/10/10Query:select *, DATEDIFF(current_date(), Hiredate)as DiffDay from employeeswhere DATEDIFF(current_date(), Hiredate) between1 and 100 order by Hiredate desc; Note : Here in query 1 and 100 indicates 1 to n days which show the Employees who have hired last 1 to 100 days. In this query DiffDay is an extra column for our understanding which shows the Nth days. Output:Find the Employees who were hired in the Last n years Finding the Employees who have been hired in the last n years. Here we get desired output by using TIMESTAMPDIFF() MySQL function EmployeesIDFNameLNameGenderSalaryHiredate1RajveerSinghMale300002010/11/052ManveerSinghMale500002017/11/053AshutoshKumarMale400002015/12/124AnkitaSharmaFemale450002016/12/155VijayKumarMale500002017/01/126DilipYadavMale250002011/02/267JayvijaySinghMale300002012/02/188ReenuKumariFemale400002013/09/199AnkitVermaMale250002017/04/0410HarpreetSinghMale500002017/10/10Query:select *, TIMESTAMPDIFF(year, Hiredate, current_date()) as DiffYear from employeeswhere TIMESTAMPDIFF(year, Hiredate, current_date()) between 1 and 4 order by Hiredate desc;Note: Here in query 1 and 4 are indicates 1 to n years which shows the Employees who have hired last 1 to 4 years. In this query, DiffYear is a extra column for our understanding which show the Nth years. Output:Select all names that start with a given letter Here we get desired output by using three different queries EmployeesIDFNameLNameGenderSalaryHiredate1RajveerSinghMale300002010/11/052ManveerSinghMale500002017/11/053AshutoshKumarMale400002015/12/124AnkitaSharmaFemale450002016/12/155VijayKumarMale500002017/01/126DilipYadavMale250002011/02/267JayvijaySinghMale300002012/02/188ReenuKumariFemale400002013/09/199AnkitVermaMale250002017/04/0410HarpreetSinghMale500002017/10/10Query:select *from employees where Fname like 'A%';select *from employees where left(FName, 1)='A';select *from employees where substring(FName, 1, 1)='A';Note: Here every query will give same output and the list of Employees who's FName start with letter A. Related articles : SQL Interview Questions | Set 1Commonly asked DBMS Questions Set 1Commonly asked DBMS Questions Set 2 Create Quiz Comment D Delta_Ranger Follow 17 Improve D Delta_Ranger Follow 17 Improve Article Tags : Misc SQL Interview Questions Interview-Questions Explore BasicsWhat is SQL?6 min readSQL Data Types3 min readSQL Operators4 min readSQL Commands | DDL, DQL, DML, DCL and TCL Commands4 min readSQL Database Operations3 min readSQL CREATE TABLE3 min readQueries & OperationsSQL SELECT Query3 min readSQL INSERT INTO Statement4 min readSQL UPDATE Statement3 min readSQL DELETE Statement3 min readSQL - WHERE Clause2 min readAliases in SQL2 min readSQL Joins & FunctionsSQL Joins (Inner, Left, Right and Full Join)4 min readSQL CROSS JOIN1 min readSQL | Date Functions3 min readSQL | String functions6 min readData Constraints & Aggregate FunctionsSQL NOT NULL Constraint2 min readSQL PRIMARY KEY Constraint5 min readSQL Count() Function4 min readSQL SUM() Function2 min readSQL MAX() Function3 min readAVG() Function in SQL2 min readAdvanced SQL TopicsSQL Subquery5 min readWindow Functions in SQL6 min readSQL Stored Procedures7 min readSQL Triggers5 min readSQL Performance Tuning6 min readSQL TRANSACTIONS6 min readDatabase Design & SecurityIntroduction of ER Model9 min readIntroduction to Database Normalization6 min readSQL Injection11 min readSQL Data Encryption5 min readSQL Backup4 min readWhat is Object-Relational Mapping (ORM) in DBMS?7 min read Like