Top 5 sql interview questions and answers
What is DDL, DML, DCL, TCL in SQL ?
DDL refers to Data Definition language. DDL is used to create/modify the structure of Database. e.g. CREATE, ALTER, DROP statement..
DML refers to Data Manipulation language. DML is used to retrieve, modify, delete, insert and update data in database. e.g. SELECT, UPDATE, INSERT statement
DCL refers to Data Control Language. DCL is used to create roles, permissions, and control access to database. e.g. GRANT, REVOKE statement.
TCL refers to Transactional Control Language. TCL is used to manage different transactions occurring within a database. e.g COMMIT, ROLLBACK statement
What is the difference between UNION vs UNION ALL?
UNION and UNION ALL are used for merging two tables which has similar structure.
the difference between UNION and UNION ALL is that the UNION removes the duplicates while merging tables but UNION ALL do not and retain all duplicates.
UNION is slower in performance as it has additional task of removing duplicates which causes more time in execution.
What is the difference between query and subquery?
A Query is a code written to fetch information from the database where as subquery is a query within another query. Basically subquery is an inner query. SubQuery is designed to executed first. The result of subquery is passed on to the main query which then process using the subquery output.
What is a stored procedure?
Stored Procedure is a function having several SQL statements. Stored procedure can be executed to process all SQL statements in it.
What is the difference between WHERE clause and HAVING clause?
Both WHERE and HAVING are used for filtering out records based conditions. WHERE clause can only be applied for static non-aggregated column whereas HAVING for aggregated columns.
SELECT * FROM Cricketbat WHERE batlenght > 2 feet
GROUP BY Team
HAVING COUNT(Cricketbat) > 2 feet;
What is DELETE and TRUNCATE commands?
DELETE command is used to remove selected rows from a table. A WHERE clause can be used to specify the rows to be deleted