SQL Interview Questions
SQL Interview Questions
TRUNCATE:
--------------------------
• TRUNCATE IS USED TO DELETE ALL THE ROWS FROM A TABLE.
• YOU CANNOT ROLLBACK DATA.
• IT IS A DDL COMMAND.
• IT IS FASTER.
TYPES OF DBMS:
--------------------------
• HIERARCHIAL DBMS
• NETWORK DBMS
• RELATIONAL DBMS
• OBJECT-ORIENTED DBMS
4. WHAT DO YOU MEAN BY TABLE AND FIELD IN SQL.
TABLE:
-------------
THE LOGICAL ORGANISATION OF ROWS AND COLUMNS IS
CALLED TABLE.
FILED:
-------------
THE VERTICAL SECTORS IN A TABLE IS CALLED FIELDS.
TYPES OF JOINS:
----------------------------
--> CARTESIAN JOIN / CROSS JOIN
--> INNER JOIN / EQUI JOIN
--> NATURAL JOIN
--> SELF JOIN
--> OUTER JOIN
--> LEFT OUTER JOIN
--> RIGHT OUTER JOIN
--> FULL OUTER JOIN
NON-CLUSTERED INDEX:
----------------------------------------
--> IT IS USED FOR EASY RETRIEVAL OF DATA FROM THE
DATABASE AND IS SLOWER.
--> IT DOESNOT ALTER THE WAY IT WAS STORED BUT IT CREATES
A SEPARATE OBJECT WITHIN A TABLE WHICH POINTS BACK TO THE ORIGINAL
TABLE ROWS AFTER RESEARCHING.
--> ONE TABLE CAN HAVE MANY NON-CLUSTERED INDEXES.
14. WRITE A SQL QUERY TO DISPLAY THE CURRENT DATE.
-->SELECT SYSDATE
FROM DUAL;
(OR)
--> SELECT CURRENT_DATE
FROM DUAL;
(OR)
--> SELECT SYSTIMESTAMP
FROM DUAL;
CARTESIAN JOIN:
-----------------------------
IN CARTESIAN JOIN A RECORD FROM TABLE1 IS MERGED WITH
ALL THE RECORDS OF TABLE2.
INNER JOIN:
----------------------
-->IT IS USED TO OBTAIN ONLY MATCHED RECORDS.
--> IN ORDER TO OBTAIN MATCHED RECORDS WE HAVE TO
WRITE ONE CONDITION CALLED 'JOIN_CONDITION'.
NATURAL JOIN:
--------------------------
IT BEHAVES AS INNER JOIN IF THERE IS ANY RELATION BETWEEN
THE TABLE , ELSE IT ACTS CARTESIAN JOIN.
SELF JOIN:
------------------
IT IS USED TO JOIN THE TABLE BY ITSELF.
(OR)
IT IS USED TO JOIN THE SAME TABLES.
OUTER JOIN:
------------------------------
IT IS USED TO OBTAIN THE UNMATCHED RECORDS .
RELATIONSHIPS:
----------------------------
RELATION OR LINKS BETWEEN ENTITIES THAT HAVE SOMETHING
TO DO WITH EACH OTHER. THERE CAN ALSO BE RELATIONSHIPS BETWEEN
SEPARATE TABLES.
CLUSTERED INDEX:
------------------------------
THIS INDEX REORDERS THE PHYSICAL ORDER OF THE TABLE
AND SEARCHES BASED ON THE BASIS OF KEY VALUES. EACH TABLE CAN
ONLY HAVE ONE CLUSTERED INDEX.
NON-CLUSTERED INDEX:
---------------------------------------
IT DOES NOT ALTER THE PHYSICAL ORDER OF THE TABLE AND
MAINTAINS A LOGICAL ORDER OF THE DATA. EACH TABLE CAN HAVE MANY
NON-CLUSTERED INDEXES.
ADVANTAGES:
--------------------------
--> BETTER DATABASE ORGANIZATION.
--> MORE TABLES WITH SMALLER ROWS.
--> EFFICIENT DATA ACCESS.
--> GREATER FLEXIBILITY OF QUERIES.
--> QUICKLY FIND THE INFORMATION.
--> EASIER TO IMPLEMENT SECURITY.
--> ALLOWS EASY MODIFICATION.
--> REDUCTION OF REDUNDANT AND DUPLICATE DATA.
--> MORE COMPACT DATABASE.
--> ENSURE CONSISTENT DATA AFTER MODIFICATION.
TRUNCATE:
----------------------
IT REMOVES ALL THE RECORDS FROM THE TABLE AND IT
CANNOT BE ROLLBACKED.
27. WHAT IS THE DIFFERENCE BETWEEN CROSS JOIN AND NATURAL JOIN.
CROSS JOIN:
-----------------
➢ A RECORD FROM TABLE IS MERGED WITH ALL THE RECORDS OF
TABLE2.
➢ IT IS ALSO CALLED AS ‘CARTESIAN JOIN’.
NATURAL JOIN:
-----------------------
➢ IT BEHAVES AS INNER JOIN IF THERE IS A RELATION BETWEEN
THE TABLES ELSE, IT BEHAVES AS CROSS JOIN.
28. WHAT IS SUB QUERY IN SQL.
SUB QUERY:
------------------
A QUERY WRITTEN INSIDE A QUERY IS KNOWN AS SUB QUERY.
WORKING PROCEDURE OF SUB QUERY:
------------------------------------------------
• LET US CONSIDER TWO QUERIES, OUTER QUERY AND INNER
QUERY.
• FIRST INNER QUERY STARTS THE EXECUTION AND PRODUCES
ONE OUTPUT.
• THAT OUTPUT IS FED/ GIVEN AS AN INPUT TO THE OUTER QUERY.
• NOW, OUTER QUERY WILL STARTS THE EXECUTION AND
PRODUCES THE RESULT.
• BY SEEING THIS, WE CAN SAY THAT OUTER QUERY IS
DEPENDENT ON INNER QUERY.
• THIS IS THE WORKING PROCEDURE OF SUB QUERY.
29. WHAT ARE THE DIFFERENT TYPES OF A SUB QUERY.
TYPES OF SUB QUERIES:
-----------------------------------
➔ CORELATED SUB QUERY
➔ NON- CORELATED SUB QUERY
CORELATED SUB QUERY:
------------------------------------
THESE ARE QUERIES WHICH SELECT THE DATA FROM A TABLE
REFERENCED IN THE OUTER QUERY. IT IS NOT CONSIDERED AS AN
INDEPENDENT QUERY AS IT REFERS TO ANOTHER TABLE AND REFERS
THE COLUMN IN A TABLE.
SELECT MAX(SALARY)
FROM TABLE_NAME
WHERE SALARY<(SELECT MAX(SALARY)
FROM TABLE_NAME
WHERE SALARY<(SELECT MAX(SALARY)
FROM TABLE_NAME));
(OR)
SELECT T1.SALARY
FROM TABLE_NAME T1
WHERE (SELECT COUNT(DISTINCT T2.SALARY)
FROM TABLE_NAME T2
WHERE TABLE_NAME T1<TABLE_NAME T2)=2;
33. WHAT IS THE NEED OF GROUP FUNCTIONS IN SQL.
GROUP FUNCTION:
----------------------------
➔ IT WORKS ON THE SET OF ROWS AND RETURNS ONE OUTPUT .
(OR)
➔ IT TAKES ALL THE INPUTS AND EXECUTES AND PRODUCES ONLY
ONE OUTPUT.
➔ IT IS ALSO CALLED AS ‘MULTI ROW FUNCTION’/ AGGREGRATE
FUNCTION.
➔ SOME COMMONLY USED GROUP FUNCTIONS ARE:
o AVG()
o COUNT()
o MAX()
o MIN()
o SUM()
34. WHAT IS A RELATIONSHIP AND WHAT ARE THE DIFFERENT TYPES OF
REALTIONSHIPS.
RELATIONSHIP:
----------------------
RELATION OR LINKS ARE BETWEEN ENTITIES THAT HAVE
SOMETHING TO DO WITH EACH OTHER. RELATIONSHIPS ARE DEFINED AS THE
CONNECTION BETWEEN THE TABLES IN A DATABASE.
TYPES OF RELATIONSHIP:
----------------------------------------
➔ ONE TO ONE RELATIONSHIP
➔ ONE TO MANY RELATIONSHIP
➔ MANY TO ONE RELATIONSHIP
➔ SELF-REFERENCING RELATIONSHIP
35. HOW CAN YOU INSERT NULL VALUES IN A COLUMN WHILE INSERTING THE
DATA.
NULL VALUES CAN BE INSERTED IN THE FOLLOWING WAYS:
-------------------------------------------------------------------------------------------
➔ IMPLICITLY BY OMITTING COLUMN FROM COLUMN LIST.
➔ EXPLICITLY BY SPECIFYING NULL KEYWORD IN THE
VALUES CLAUSE.
36. WHAT IS THE MAIN DIFFERENCE BETWEEN “BETWEEN” AND “IN”
OPERATORS.
BETWEEN:
----------------
➔ IT IS USED WHENEVER WE HAVE A RANGES OF VALUES
(LOWER_RANGE & HIGHER_RANGE OR STARTING_VALUE &
ENDING_VALUE).
➔ SYNTAX:
o COLUMN_NAME/ EXPRESSION BETWEEN LOWER_RANGE
AND HIGHER_RANGE
IN:
---
➔ IT IS USED TO PASS MULTIPLE VALUES AT THE R.H.S
➔ SYNTAX:
o COLUMN_NAME/ EXPRESSION IN (V1,V2,V3,……..Vn)
UPPER:
---------
THIS FUNCTION RETURNS THE STRING IN UPPERCASE. IT TAKES
A STRING AS AN ARGUMENT AND RETURNS IT BY CONVERTING IT INTO
UPPERCASE.
SYNTAX: UPPER(‘STRING’)
INITCAP:
------------
THIS FUNCTION RETURNS THE STRING WITH THE FIRST LETTER
IN UPPERCASE AND REST OF THE LETTERS IN LOWERCASE.
SYNTAX: INITCAP(‘STRING’)
SCALAR FUNCTION:
------------------------------------
IT RETURNS A SINGLE VALUE BASED ON THE INPUT VALUE.
EX: UCASE(), NOW()
48. HOW CAN YOU FETCH ALTERNATE RECORDS FROM THE TABLE.
YOU CAN FETCH ALTERNATE RECORDS i.e.., BOTH ODD AND EVEN
NUMBERS.
EXAMPLE1: TO DISPLAY EVEN NUMBER, USE THE FOLLOWING
COMMAND:
SELECT STUDENTID
FROM (SELECT ROWNO,STUDENTID
FROM STUDENT)
WHERE MOD(ROWNO,2)=0;
49. NAME THE OPERATOR WHICH IS USED IN THE QUERY FOR PATTERN
MATCHING.
OPERATORS USED FOR PATTERN MATCHING:
LIKE:
*IT IS USED FOR PATTERN MATCHING.
*TO ACHIEVE PATTERN MATCHING WE HAVE TO TWO
SPECIAL OPERATORS, THEY ARE:
→PERCENTILE
→UNDERSCORE
PERCENTILE:
IT CAN ACCEPT ANY NUMBER OF CHARACTERS, ANY
NUMBER OF TIMES, AND NO CHARACTERS.
UNDERSCORE:
IT CAN ACCEPT ONLY ONE CHARACTER BUT ANY
CHARACTER.
PL/SQL:
---------------
IT IS A PROCEDURAL LANGUAGE WHICH ALLOWS YOU TO WRITE
A FULL PROGRAM TO ACCOMPLISH MULTIPLE OPERATIONS SUCH AS
SELECTS/ INSERTS/ UPDATES/ DELETES.
REPLACE(STRING_EXPRESSION,SEARCH_STRING,REPLACEMENT_STRIN
G)