SQL Interview
SQL Interview
● You can ask SQL questions: fuzzy matching and regular expressions can help
you search for information even with incorrect spellings.
● SQL is a shapeshifter. With the ability to transform data dynamically, PIVOT
and UNPIVOT can transform data from column to row and vice versa.
t
1. Define Database.
aa
A database is an organized collection of structured data that can be stored, easily
accessed, managed, and retrieved digitally from a remote or local computer
system. Databases can be complex and vast and are built with a fixed design and
modeling approach. While smaller databases can be stored on a file system, large
lliP
ones are hosted on computer clusters or cloud storage.
An RDBMS stores data in the form of a collection of tables. The relations are
defined between the common fields of these tables. MS SQL Server, MySQL, IBM
t
DB2, Oracle, and Amazon Redshift are all based on RDBMS.
aa
DBMS Vs. RDBMS
Amount of Data It deals with a small It deals with a larger amount of data
quantity of data
t
user
aa
Data Fetching It is slower for large It is speedy due to the relational
amounts of data approach
Requirements
3. What is SQL?
SQL stands for Structured Query Language. It is the standard language for RDBMS
and is useful in handling organized data with entities or variables with relations
between them. SQL is used for communicating with databases.
According to ANSI, SQL is used for maintaining RDBMS and for performing different
operations of data manipulation on different datatypes by using the features of
SQL. It is a database language that is used for the creation and deletion of
databases. It can also be used, among other things, to fetch and modify the rows of
a table.
t
fields and tables in databases. It involves constructing tables and setting up
aa
relationships between those tables according to certain rules. The redundancy and
inconsistent dependency can be removed using these rules to make normalization
more flexible.
relies on any proper subset of any candidate key of the table. Often, the
solution to this problem is to specify a single-column primary key.
● Third Normal Form: A relation is in the third normal form when it meets
In
the conditions for the second normal form and there is not any transitive
dependency between the non-prime attributes, i.e., all the non-prime
attributes are decided only by the candidate keys of the relation and not
by other non-prime attributes.
● Boyce-Codd Normal Form: A relation is in the Boyce-Codd normal form
or BCNF if it meets the conditions of the third normal form, and for every
functional dependency, the left-hand side is a super key. A relation is in
BCNF if and only if X is a super key for every non-trivial functional
dependency in form X –>; Y.
5. What is denormalization?
Know the most common methods for executing function in sql by exploring our blog on
how to run function in SQL!
t
aa
6. What are Joins in SQL?
JOINS in SQL is used to combine rows from two or more tables based on a related
column between them. Various types of JOINS can be used to retrieve data,
depending on the relationship between tables.
lliP
There are four types of Joins:
● Inner Join
● Left Join
● Right Join
● Full Join
te
Check out the Postgre Interview Questions to prepare for your next interview.
(Inner) Join: An inner join is used to retrieve the records that have matching values
in tables involved in the join. It combines rows from two tables based on a related
column and returns only the matching record. Inner Join is mostly used to join
queries.
1 SELECT *
t
2 FROM Table_A
aa
3 JOIN Table_B;
4 SELECT *
lliP
5 FROM Table_A
Left (Outer) Join: The use of left join is to retrieve all the records or rows from the
left and the matched ones from the right.
te
1 SELECT *
In
2 FROM Table_A A
4 ON A.col = B.col;
Right (Outer) Join: The use of Right join is to retrieve all the records or rows from
the right and the matched ones from the left.
1 SELECT *
2 FROM Table_A A
4 ON A.col = B.col;
t
Full (Outer) Join: The use of Full join is to retrieve the records that have a match
aa
either in the left table or the right table.
1 SELECT *
lliP
2 FROM Table_A A
4 ON A.col = B.col;
te
Ace your next SQL interview with our expert-written Sql Join Query Interview
Questions.
In
t
an existing table.
aa
● Data Manipulation Language (DML)
These SQL queries are used to manipulate data in a database.
○ SELECT INTO: Selects data from one table and inserts it into
another
○ INSERT: Inserts data or records into a table
lliP
○ UPDATE: Updates the value of any record in the database
○ DELETE: Deletes records from a table
● Data Control Language (DCL)
These SQL queries manage the access rights and permission control of
the database.
○ GRANT:Grants access rights to database objects
te
Discover the syntax for not equal to operator in SQL as well as how to use this
t
operator to compare and omit the value in the data.
aa
9. What are the applications of SQL?
Constraints in SQL are used to specify some sort of rules for processing data and
limiting the type of data that can go into a table. Now, let us understand what a
In
A default constraint is used to define a default value for a column so that it is added
to all new records if no other value is specified. For example, if we assign a default
constraint for the E_salary column in the following table and set the default value to
85000, all the entries in this column will have the default value of 85000, unless no
other value has been assigned during the insertion.
t
Now, let us go through how to set a default constraint. We will start by creating a
aa
new table and adding a default constraint to one of its columns.
Code:
2
select *stu1
Output:
te
Code:
Output:
t
Also, learn from our blog on MySQL Interview Questions and Answers to crack any
aa
Interview.
Unique constraints ensure that all the values in a column are different. For
lliP
example, if we assign a unique constraint to the e_name column in the following
table, then every entry in this column should have a unique value.
te
In
Output:
t
aa
A PRIMARY KEY constraint will automatically have a UNIQUE constraint. However,
unlike a PRIMARY KEY, multiple UNIQUE constraints are allowed per table.
lliP
12. What is meant by table and field in SQL?
An organized data in the form of rows and columns is said to be a table. Simply put,
it is a collection of related data in a table format.
te
Here rows and columns are referred to as tuples and attributes, and the number of
columns in a table is referred to as a field. In the record, fields represent the
characteristics and attributes and contain specific information about the data.
In
Prepare yourself for PostgreSQL from our PostgreSQL interview questions blog.
A primary key is used to uniquely identify all table records. It cannot have NULL
values and must contain unique values. Only one primary key can exist in one table,
and it may have single or multiple fields, making it a composite key.
Now, we will write a query to demonstrate the use of a primary key for the
employee table:
1 //
t
4 Employee_name varchar(255) NOT NULL,
aa
5 Employee_designation varchar(255),
6 Employee_Age int,
lliP
7 PRIMARY KEY (ID)
8 );
A key that can accept only a null value and cannot accept duplicate values is called a
unique key. The role of a unique key is to make sure that all columns and rows are
In
unique.
The syntax for a unique key will be the same as the primary key. So, the query using
a unique key for the employee table will be as follows:
1 //
t
5 Employee_designation varchar(255),
aa
6 Employee_Age int,
7 UNIQUE(ID)
lliP
8 );
Both primary and unique keys carry unique values but a primary key cannot have a
null value, while a unique key can. In a table, there cannot be more than one
primary key, but there can be multiple unique keys.
In
A foreign key is an attribute or a set of attributes that reference the primary key of
some other table. Basically, a foreign key is used to link together two tables
together.
t
aa
1 CREATE TABLE Orders (
lliP
2 OrderID int NOT NULL,
4 PersonID int,
te
7 )
SQL (Structured Query Language) and NoSQL (Not Only SQL) are different database
management systems, each offering unique advantages. Here, we will discuss the
benefits of SQL over NoSQL in a comprehensive manner.
t
results in a higher level of data consistency, reducing the risk of data
aa
corruption or inconsistencies. On the other hand, NoSQL databases are
schema-less, allowing for more flexibility but potentially sacrificing
consistency.
2. ACID Compliance: SQL databases are designed to follow the ACID
(Atomicity, Consistency, Isolation, Durability) principles. These properties
lliP
guarantee transactional integrity, ensuring that database operations are
reliable and maintain data integrity. NoSQL databases may sacrifice
some of these properties for scalability and performance advantages.
3. Advanced Querying Capabilities:SQL databases provide a rich set of
powerful querying capabilities through SQL. It allows for complex joins,
aggregations, filtering, and data sorting. SQL queries are expressive and
te
relatively newer, NoSQL databases may have a more limited tooling and
ecosystem.
Interested in SQL? Check out this blog on How to Become an SQL Developer to get ahead
in your career.
t
aa
lliP
te
● DDL: DDL is that part of SQL that defines the data structure of the
database in the initial stage when the database is about to be created. It
In
command, updating data with the update command, and deleting data
from the database through the delete command.
● DCL: DCL is used to control access to the data in the database. DCL
commands are normally used to create objects related to user access
and to control the distribution of privileges among users. The commands
that are used in DCL are Grant and Revoke.
● TCL: TCL is used to control the changes made by DML commands. It also
authorizes the statements to assemble in conjunction with logical
transactions. The commands that are used in TCL are Commit, Rollback,
t
Savepoint, Begin, and Transaction.
aa
Also, Have a look at SQL Command Cheatsheet.
Indexes are used to find all rows matching with some columns and then to skim
through only those subsets of the data to find the matches.
Syntax:
t
Single-Column Indexes: A single-column index is created for only one column of a
aa
table.
Syntax:
Syntax:
Unique Indexes: A unique index is used to maintain the data integrity of a table. A
unique index does not allow multiple values to be inserted into the table.
Syntax:
2 ON table_name(column_name)
Entities: An entity can be a person, place, thing, or any identifiable object for which
t
data can be stored in a database.
aa
For example, in a company’s database, employees, projects, salaries, etc., can be
referred to as entities.
That ends the section of basic interview questions. Let us now move on to the next
section of intermediate interview questions.
te
SQL operators are the special keywords or characters that perform specific
operations. They are also used in SQL queries. These operators can be used within
the WHERE clause of SQL commands. Based on the specified condition, SQL
operators filter the data.
t
in True or False
○ ALL
aa
○ AND
○ ANY
○ ISNULL
○ EXISTS
○ BETWEEN
lliP
○ IN
○ LIKE
○ NOT
○ OR
○ UNIQUE
● Comparison Operators: For comparisons of two values and checking
te
t
○ modulo equals (%=)
aa
● String Operators: For concatenation and pattern matching of strings
○ + (String concatenation)
○ += (String concatenation assignment)
○ % (Wildcard)
○ [] (Character(s) matches)
lliP
○ [^] (Character(s) not to match)
○ _ (Wildcard match one character)
Data integrity is the assurance of the accuracy and consistency of data over its
te
whole life cycle. It is a critical aspect of the design, implementation, and usage of
systems that store, process, or retrieve data.
Data integrity also defines integrity constraints for enforcing business rules on data
In
26. How would you find the second highest salary from
the following table?
t
aa
Code:
4 from employee)
te
Output:
In
The FLOOR() function helps to find the largest integer value for a given number,
which can be an equal or lesser number.
Are you planning to learn SQL Server? Here is the SQL Certification training. Enroll now!
● Clustered Index: It is used to sort the rows of data by their key values. A
clustered index is like the contents of a phone book. We can directly
open the book on David’s index (for “David, Thompson”) and find
information for all Davids right next to each other. Since the data are
located next to each other, it helps a lot in fetching the data based on
range-based queries. A clustered index is actually related to how the
t
data is stored; only one clustered index is possible per table.
aa
● Non-Clustered Index: It stores data at one location and indexes at
another location. The index has pointers that point to the location of the
data. As the indexes in a non-clustered index are stored in a different
place, there can be many non-clustered indexes for a table.
lliP
te
In
State the differences between the Clustered and Non-clustered indexesState the
differences between the Clustered and Non-clustered indexes
Now, we will see the major differences between clustered and non-clustered
indexes:
Used For Sorting and storing Creating a logical order for data
records physically in rows; pointers are used for physical
memory data files
Methods for Stores data in the leaf Never stores data in the leaf nodes
t
Storing nodes of the index of the index
aa
Size Quite large Comparatively, small
Type of Key By default, the primary It can be used with the unique
te
CDC refers to change data capture. It captures recent INSERT, DELETE, and UPDATE
activity applied to SQL Server tables. It records changes to SQL Server tables in a
compatible format.
SQL MySQL
t
aa
It is used for query and operating It allows data handling, storing, and
database systems, modification in an organized manner
The server is independent During backup sessions, the server blocks the
database
te
SQL PL/SQL
It provides interaction with the database It does not provide interaction with
server the database server
t
aa
It cannot contain PL/SQL code It can contain SQL because it is an
extension of SQL
lliP
te
In
t
aa
lliP
32. What is the ACID property in a database?
The full form of ACID is atomicity, consistency, isolation, and durability. ACID
properties are used to check the reliability of transactions.
te
remains unchanged.
● Consistency means that the data meets all validity guidelines. The
transaction never leaves the database without finishing its state.
● Concurrency management is the primary objective of isolation.
● Durability ensures that once a transaction is committed, it will occur
regardless of what happens in between such as a power outage, fire, or
some other kind of disturbance.
Enroll now in SQL course in Bangalore to learn more in-depth about SQL.
Group functions operate on a series of rows and return a single result for each
group. COUNT(), MAX(), MIN(), SUM(), AVG(), and VARIANCE() are some of the most
widely used group functions.
t
Character manipulation functions are used for the manipulation of character data
aa
types.
Some of the character manipulation functions are as follows:
1 UPPER(‘string’)
Example:
te
Output:
In
1 DEMO STRING
Syntax:
1 LOWER(‘STRING’)
Example:
Output:
1 demo string
t
INITCAP: It converts the first letter of the string to uppercase and retains others in
aa
lowercase.
Syntax:
1 Initcap(‘sTRING’)
lliP
Example:
Output:
te
1 Dataset
In
Syntax:
1 CONCAT(‘str1’,’str2’)
Example:
Output:
1 Data Science
t
Syntax:
aa
1 LENGTH(‘String’)
Example:
lliP
1 SELECT LENGTH(‘Hello World’) from String
1 Output: 11
te
Since the primary key is unique for each record, this primary field is added as the
AUTO_INCREMENT field so that it is incremented when a new record is inserted.
Syntax:
4 Employee_designation varchar(255)
t
5 Age int,
aa
6 PRIMARY KEY (Employee_id)
7 )
lliP
Check out our Blog on PL/SQL Interview Questions to crack your SQL Interview.
The trigger can be defined as an automatic process that happens when an event
te
occurs in the database server. It helps to maintain the integrity of the table. The
trigger is activated when the commands, such as insert, update, and delete, are
given.
In
In SQL Server, usernames and passwords are stored in the main database in the
sysxlogins table.
Relationships are developed by interlinking the columns of one table with the
column of another table. There are three different types of relationships, which are
t
as follows:
aa
● One-to-one relationship
● Many-to-one relationship
● Many-to-many relationship
1 Select SERVERPROPERTY('productversion')
The COALESCE function takes a set of inputs and returns the first non-null value.
Syntax:
t
aa
1 COALESCE(val1,val2,val3,……,nth val)
Example:
1 1
te
Inner Join gives us those records that have matching values in two tables.
Let us assume that we have two tables: Table A and Table B. When we apply Inner
Join to these two tables, we will get only records common to both Table A and Table
B.
Syntax:
1 SELECT columns
2 FROM table1
t
aa
3 INNER JOIN table2
4 ON table1.column_x=table2.column_y;
Example:
lliP
1 select * from employee
Output:
In
Now, we will apply Inner Join to both these tables, where the e_dept column in the
employee table is equal to the d_name column of the department table.
Syntax:
2
from employee inner join department
3
on
4
employee.e_dept=department.d_name
t
aa
Output:
lliP
After applying Inner Join, we have only those records where the departments match
in both tables. As we can see, the matched departments are Support, Analytics, and
Sales.
te
In SQL, the views are classified into four types. They are the following:
In
● Simple View: It is a view based on a single table and does not have a
GROUP BY clause or other features.
● Complex View: It is a view built from several tables and includes a
GROUP BY clause as well as functions.
● Inline View: It is a view built on a subquery in the FROM clause, which
provides a temporary table and simplifies a complicated query.
● Materialized View: It is a view that saves both the definition and the
details. It builds data replicas by physically preserving them.
t
Two authentication modes are available in SQL Server. They are as follows:
aa
● Windows Authentication Mode: It allows authentication for Windows but
not for SQL Server.
● Mixed Mode: It allows both types of authentication—Windows and SQL
Server.
lliP
46. What is a function in SQL Server?
SQL Server Agent plays an important role in the daily work of SQL Server
administrators or DBAs. This is one of the important parts of SQL Server. The aim of
the server agent is to easily implement tasks using a scheduler engine that enables
the tasks to be performed at scheduled times. SQL Server Agent uses SQL Server to
store scheduled management task information.
Views are virtual tables used to limit the tables that we want to display. Views are
nothing but the result of an SQL statement that has a name associated with it. Since
views are not physically present, they take less space to store.
t
aa
lliP
Let us consider an example. In the following employee table, say we want to
perform multiple operations on the records with the gender “Female”. We can
create a view-only table for the female employees from the entire employee table.
Syntax:
2
select * from female_employee
Output:
t
aa
49. State the differences between views and tables.
lliP
Views Tables
A view does not hold the data itself. A table contains data and stores it in
databases.
In
t
aa
Self Join in SQL is used for joining a table with itself. Here, depending on some
conditions, each row of the table is joined with itself and with other rows of the
table.
Syntax:
lliP
1 SELECT a.column_name, b.column_name
3 WHERE condition
te
Example:
t
6 Amir 22 MP 4,500.00
aa
7 Arpit 24 Indore 10,000.00
ID Name Salary
te
2 Anand 1,500.00
2 Abhishek 1,500.00
In
1 Vishal 2,000.00
2 Vishal 1,500.00
3 Vishal 2,000.00
6 Vishal 4,500.00
1 Sayeedul 2,000.00
2 Sayeedul 1,500.00
t
3 Sayeedul 2,000.00
aa
4 Sayeedul 6,500.00
6 Sayeedul 4,500.00
lliP
1 Amir 2,000.00
2 Amir 1,500.00
te
3 Amir 2,000.00
1 Arpit 2,000.00
In
2 Arpit 1,500.00
3 Arpit 2,000.00
4 Arpit 6,500.00
5 Arpit 8,500.00
6 Arpit 4,500.00
t
The union operator is used to combine the result set of two or more select
aa
statements. For example, the first select statement returns the fish shown in Image
A, and the second statement returns the fish shown in Image B. The Union operator
will then return the result of the two select statements as shown in Image A U B. If
there is a record present in both tables, then we will get only one of them in the
lliP
final result.
te
In
Syntax:
Union:
These are the two tables in which we will use the Union operator.
t
aa
lliP
1 select * from student_details1
Union:
te
Output:
In
The Union All operator gives all the records from both tables including the
duplicates.
t
aa
Let us implement it in the SQL Server.
Syntax:
lliP
1 select * from student_details1
Union All:
Output:
In
Consider the following employee table. In the table, Sabid has the third-highest
salary (60,000).
Name Salary
t
aa
Tarun 70,000
Sabid 60,000
lliP
Adarsh 30,000
Vaibhav 80,000
Below is a simple query to find out which employee who has the third-highest
te
salary. The functions RANK, DENSE RANK, and ROW NUMBER are used to obtain the
increasing integer value by imposing the ORDER BY clause in the SELECT statement,
based on the ordering of the rows. The ORDER BY clause is necessary when the
RANK, DENSE RANK, or ROW NUMBER functions are used. On the other hand, the
In
1
WITH CTE AS
2
(
3
t
table?
aa
There are several ways to find the second highest salary in a table.
2. Using Subquery:
te
3 FROM table_name);
6 Where,
t
The effective way to prevent SQL injection attacks is through input validation and
aa
parameterized queries, which include prepared statements. The developer can
sanitize all the inputs, not only just the web form input, because the application
code should never use the input directly.
Database indexing helps the DBMS find the specific rows in a table very quickly. The
most common database index is the B-tree Index. A B-tree index is a situation
where the data has few distinct values, such as name, dates or state codes.
te
Transactions help to ensure the data consistency and integrity of the data; they also
protect against errors by grouping many actions into a single unit.
Transaction funds from one account to another are the best example of ensuring
data consistency; the total value of the funds in both accounts is the same at the
start and end of each transaction.
We can optimize a slow-moving SQL query by using indexing in the DBMS to find
the specific rows in a table very quickly.
1. Indexing
t
2. Using Distinct
aa
3. Having and Where clauses
4. Avoiding correlated subqueries
5. Limit
6. Column statistics
lliP
SQL Interview Questions for 5 Years
Experienced
te
This means that whenever we work with aggregate functions and use the GROUP
BY clause, we cannot use the WHERE clause. Therefore, instead of the WHERE
clause, we should use the HAVING clause.
t
When we use the HAVING clause, the GROUP BY clause should come first, followed
aa
by the HAVING clause.
The stuff() function deletes a part of the string and then inserts another part into
the string, starting at a specified position.
In
Syntax:
Here, String1 is the one that will be overwritten. The position indicates the starting
location for overwriting the string. Length is the length of the substitute string, and
String2 is the string that will overwrite String1.
Example:
Output:
1 Python Tutorial
t
aa
60. What is a stored procedure? Give an example.
A stored procedure is a prepared SQL code that can be saved and reused. In other
words, we can consider a stored procedure to be a function consisting of many SQL
lliP
statements to access the database system. We can consolidate several SQL
statements into a stored procedure and execute them whenever and wherever
required.
Syntax:
In
2 AS
3 Sql_statement
4 GO;
6 EXEC procedure_name
Example:
We are going to create a stored procedure that will help us extract the age of the
employees.
t
aa
1 create procedure employee_age
2 as
1 exec employee_age
te
Output:
In
Syntax:
t
aa
3 create table #book(b_id int, b_cost int)
Output:
te
In
A database cursor is a control that allows you to navigate around a table’s rows or
documents. It can be referred to as a pointer for a row in a set of rows. Cursors are
extremely useful for database traversal operations such as extraction, insertion,
and elimination.
t
must always be aligned with the cursor declaration.
aa
● To initialize the result set, OPEN statements must be called before
fetching the rows from the result table.
● To grab and switch to the next row in the result set, use the FETCH
statement.
● To deactivate the cursor, use the CLOSE expression.
lliP
● Finally, use the DEALLOCATE clause to uninstall the cursor description
and clear all the resources associated with it.
3 SELECT name
In
4 From myDB.company
6 OPEN db_cursor
7 FETCH next
8 FROM db_cursor
9 Into @name
10 Close db_cursor
t
11 DEALLOCATE db_cursor
aa
63. What is the use of the INTERSECT operator?
The INTERSECT operator helps combine two select statements and returns only
lliP
those records that are common to both select statements. After we get Table A and
Table B over here, and if we apply the INTERSECT operator on these two tables,
then we will get only those records that are common to the result of the select
statements of these two tables.
te
In
Syntax:
2 INTERSECT
t
aa
1 select * from student_details1
Output:
lliP
te
2 intersect
Output:
Let us create an employee table where the column names are ID, NAME,
t
DEPARTMENT, and EMAIL. Below are the SQL scripts for generating the sample
data:
aa
1 CREATE TABLE EMPLOYEE
2 (
lliP
3 ID INT,
4 NAME Varchar(100),
5 DEPARTMENT INT,
te
6 EMAIL Varchar(100)
In
7 )
t
INSERT INTO EMPLOYEE VALUES (5,'Tarun',101,'[email
protected]')
aa
INSERT INTO EMPLOYEE VALUES (6,'Sabid',102,'[email
protected]')
lliP
te
1
e2.name AND e1.id > e2.id
The SQL query above will delete the rows, where the name fields are duplicated,
and it will retain only those unique rows in which the names are unique and the ID
fields are the lowest, i.e., the rows with IDs 5 and 6 are deleted, while the rows with
IDs 1 and 2 are retained.
t
The white box testing method mainly deals with the internal structure of a
aa
particular database, where users hide specification details. The white box testing
method involves the following:
● As the coding error can be detected by testing the white box, it can
eliminate internal errors.
lliP
● To check for the consistency of the database, it selects the default table
values.
● This method verifies the referential integrity rule.
● It helps perform the module testing of database functions, triggers,
views, and SQL queries.
The black box testing method generally involves interface testing and database
te
● Mapping details
● Verification of incoming data
In
Blocking: Blocking occurs when one session holds a lock on a specific resource and
a second SPID attempts to acquire a conflicting lock type on the same resource.
The most common SQL server performance symptoms are CPU, memory, network,
and slow-running queries.
t
database.
aa
68. What is a Deadlock or a live Deadlock, and how do
you resolve it?
lliP
A deadlock is a situation where a set of processes are blocked because each
process is holding the resource and waiting for the other resource. A live deadlock
is just like a deadlock-like situation where the processes block each other with a
repeated state change yet make no progress.
Statistics in SQL help us compute the standard statistics, which help us execute the
SQL queries more efficiently. The statistics will help us understand the total
structure of the data. There are various functions that we can use in statistics, such
as MEAN, MAX, MIN, MEDIAN, MODE, and Standard Deviation, and we can also use
inferential statistics in SQL, like t-test, f-test, ANOVA, and analytics functions.
t
statistics.
aa
70. What is an efficient structure to speed up the table
reads?
lliP
With the help of Database Indexing we can improve the speed of the table read.
Database indexing helps DBMS find the specific rows in a table very quickly. The
most common database index is the B-tree Index.that has few distinct values, such
as name, dates, or state codes.
te
t
aa
The differences between DELETE and TRUNCATE commands are the following:
lliP
● TRUNCATE is a DDL command, and DELETE is a DML command.
● With TRUNCATE, we cannot really execute and trigger, while with DELETE,
we can accomplish a trigger.
● If a table is referenced by foreign key constraints, then TRUNCATE will
not work. So, if we have a foreign key, we have to use the DELETE
command.
te
2 [WHERE condition];
Example:
Output:
Output:
t
aa
The syntax for the TRUNCATE command:
lliP
1 TRUNCATE TABLE
2 Table_name;
Example:
te
Output:
Output:
t
aa
72. What is the difference between the DROP and
TRUNCATE commands?
lliP
If a table is dropped, all things associated with that table are dropped as well. This
includes the relationships defined on the table with other tables, access privileges,
and grants that the table has, as well as the integrity checks and constraints.
To create and use the table again in its original form, all the elements associated
with the table need to be redefined.
te
73. What are the third-party tools that are used in SQL
Server?
The following is the list of third-party tools that are used in SQL Server:
● SQL CHECK
● SQL DOC 2
● SQL Backup 5
● SQL Prompt
● Litespeed 5.0
Yes, SQL Server can be linked with other database systems using various methods.
One common method is through the use of linked servers. Linked servers allow SQL
Server to establish connections and access data from other database platforms. By
configuring appropriate settings and creating the necessary connections, SQL
t
Server can interact with databases such as MySQL, Oracle, PostgreSQL, and more,
aa
enabling data integration and querying across multiple systems.
There are many SELECT statement clauses in SQL. Some of the most commonly
used clauses with SELECT queries are as follows:
● FROM
te
The FROM clause defines the tables and views from which data can be
interpreted. The tables and views listed must exist at the time the
question is given.
● WHERE
In
The WHERE clause defines the parameters that are used to limit the
contents of the results table. You can test for basic relationships or for
relationships between a column and a series of columns using
subselects.
● GROUP BY
The GROUP BY clause is commonly used for aggregate functions to
produce a single outcome row for each set of unique values in a set of
columns or expressions.
● ORDER BY
The ORDER BY clause helps in choosing the columns on which the table’s
result should be sorted.
● HAVING
The HAVING clause filters the results of the GROUP BY clause by using an
aggregate function.
t
OLTP: It stands for online transaction processing, and we can consider it a category
aa
of software applications that are efficient for supporting transaction-oriented
programs. One of the important attributes of the OLTP system is its potential to
maintain consistency. The OLTP system often follows decentralized planning to
avoid single points of failure. This system is generally designed for a large audience
of end users to perform short transactions. The queries involved in such databases
lliP
are generally simple, require a fast response time, and, in comparison, return only
a few records. So, the number of transactions per second acts as an effective
measure for those systems.
te
In
transactions. For OLAP systems, the efficiency of computing depends heavily on the
response time. Hence, such systems are generally used for data mining or
maintaining aggregated historical data, and they are usually used in
multidimensional schemas.
t
HOLAP partition are stored by analysis services in a multidimensional structure. The
aa
facts are stored in a relational database.
78. How can you copy data from one table to another
table?
lliP
te
In
t
We have to copy this data into another table. For this purpose, we can use the
aa
INSERT INTO SELECT operator. Before we go ahead and do that, we will have to
create another table that will have the same structure as the above-given table.
Syntax:
lliP
1 create table employee_duplicate(
2 e_id int,
3 e_name varchar(20),
te
4 e_salary int,
5 e_age int,
In
6 e_gender varchar(20)
7 e_dept varchar(20)
8 )
Output:
t
aa
lliP
79. What is the difference between BETWEEN and IN
operators in SQL?
The BETWEEN operator is employed to identify rows that fall within a specified
range of values, encompassing numerical, textual, or date values. It returns the
te
On the other hand, the IN operator serves as a condition operator utilized for
searching values within a predetermined range. When multiple values are available
In
Check out how to use IN and BETWEEN Operators in SQL with examples.
The main difference between the ‘HAVING’ and ‘WHERE’ clauses in SQL is that the
‘WHERE’ clause operates on individual rows of data, while the ‘HAVING’ clause is
used to filter aggregated data. The ‘WHERE’ clause cannot be used with aggregate
functions, whereas the ‘HAVING’ clause specifically filters results based on
aggregate conditions.
t
aa
Tarun Production 50,000
Output:
Name Salary
Tarun 50,000
Tarun 60,000
Sabid 70,000
t
Adarsh 80,000
aa
Vaibhav 90,000
The HAVING clause, on the other hand, operates on the aggregated results.
lliP
SELECT Department, SUM(Salary) AS total FROM Employee GROUP
1
BY Department
Output:
te
Department Total
Marketing 70,000
In
Production 130,000
Testing 150,000
Now, let us see the output when we apply HAVING to the above query.
Output:
Department Total
t
Production 130,000
aa
Testing 150,000
lliP
81. How can you create empty tables with the same
structure as another table?
This can be achieved by fetching the records of one table into a new table using the
INTO operator while fixing a WHERE clause to be false for all records. In this way,
SQL prepares the new table with a duplicate structure to accept the fetched
te
records. However, there are no records that will get fetched due to the WHERE
clause in action. Therefore, nothing is inserted into the new table, thus creating an
empty table.
In
We can update the prices of the product columns by using the UPDATE method,
which is part of the DML.
Where,
table_name: your table name
price: price column present in your table
t
With this code, we can easily modify the price of each product by 5%.
aa
83. How will you fetch the most recent entries in a
database?
We can fetch the most recent entries in a database by using the ORDER BY clause
lliP
along with the timestamp column in descending order.
Where,
te
in each category?
To calculate the average price of products in each category, we can use the
aggregate function (AVG) with the price column and group it by the category
column.
Where,
table_name: table name
category: category column in your table
price: price column in your table
t
85. How will you calculate the total sales in each
aa
category of a product sales table?
To calculate the total sales in each category of a product sales table, we can use the
aggregate function (SUM) with the sales amount column and group it by the
lliP
category column.
Where,
te
86. How will you find the IDs or details where there have
been no entries in terms of sales?
To find the IDs or details where there have been no entries in terms of sales, we
can use the LEFT JOIN or NOT EXISTS clause.
Assume we have two tables: ‘product’ with product details and ‘sales’ with sales
data.
Left Joins:
Where,
p.product_id: product id in the product table
p.product_name: product name in the product table
t
s.product_id: product id in the sales table
aa
Here, the WHERE s.product_id is NULL condition helps us filter out the rows where
a match in the sales table is not found.
Not Exists:
lliP
SELECT p.product_id, p.product_name FROM products p WHERE NOT
1 EXISTS (SELECT 1 FROM sales s WHERE s.product_id = p.product_id
);
2
3
te
Where,
4
p.product_id: product id in the product table
In
5
p.product_name: product name in the product table
6
s.product_id: product id in the sales table
To find the average salary of each vertical and the highest salary among the
employees, we can use the group by clause along with the aggregate functions
(AVG and MAX).
t
aa
SELECT vertical, AVG(salary) as average_salary, MAX(salary) as
1
highest_salary FROM employees GROUP BY vertical;
Where,
vertical: column that you want to group
lliP
salary: column in the table
employees: table name
prices.
To find the top 3 products in each category in terms of price, we can group by
clause along with the aggregate function (MAX) with the price column and set the
In
Where,
category: column name having different categories
t
combination of date functions and aggregate functions.
aa
SELECT EXTRACT(YEAR_MONTH FROM sale_date) AS year_month,
1 SUM(quantity_sold) AS total_sales FROM sales WHERE product_id =
'your_product_id' GROUP BY year_month ORDER BY year_month;
Where,
lliP
sale_date: date of the sales column
quantity_sold: number of quantity sold column
sales: table name
product_id: Id of the product column
your_product_id: pass the product ID for which you want to check.
te
To fetch the managers and employees working under them, we can use a self-join
to fetch the managers and the employees working under them.
Where,
manager_id: manager id column
manager_name: manager name column
employee_id: employee id column
employee_name: employee name column
t
To fetch the total quantity of the top product purchased by the customers, we can
aa
use a group by clause along with the limit in descending order.
● Snapshot replication
● Transactional replication
● Merge replication
Go through the following SQL Cheat Sheets and download their PDF:
t
aa
lliP
te
In
Check out this exclusive blog on SQL Cheat Sheet to know more!
t
Highest – 8 LPA Highest – 130,000 USD
aa
SQL Trends in 2024
lliP
According to the Bureau of Labor Statistics US, the projected growth in demand for
roles like SQL Developers and Database Administrators is expected to rise 8% faster
than the average rate from 2022 to 2032.
1. Global Demand: With more than 400,000 active jobs on LinkedIn in the
United States alone for SQL and related roles, the tally moves to more
te
increasing.
The job opportunities in SQL can be different for various departments; the
inclusivity of SQL enhances business solutions and hence is required in most
domains and processes. Some of the job opportunities in SQL are as follows:
t
business analysts retrieve data for
reporting and analysis.
aa
Data Analyst Among data analysts, SQL helps them
analyze large amounts of data stored in
the databases.
lliP
Data Scientist A very efficient tool for data scientists
to access and analyze large amounts of
data.
t
aa
lliP
te
The roles and responsibilities of a SQL developer are quite diverse and vary for
In
t
and enhancing their performance.
aa
Conclusion
SQL is an essential skill in the 21st century, time and again proved by its
lliP
requirement in every major breakthrough role.Owing to its simplicity and powerful
applications, SQL isn’t limited to any specific domain or professionals, you can learn
and master SQL for any job role, and help improve the entire workflow. Enroll in
SQL Certification training to get an in-depth understanding of SQL workflows or join
the path of excellence with SQL Master Program for an enriching learning
experience.
te
If you have any questions, post your queries at intellipaat community space or let us
know in the comments, and we’ll get back to you.
In