0% found this document useful (0 votes)
5 views3 pages

Emailid Related SQL Ques

The document contains SQL queries for extracting parts of email addresses, updating bonus columns based on salary, and displaying employee details along with department information. It also includes examples of using CASE statements and CHECK constraints in SQL. Additionally, it provides queries to find employees not receiving bonuses and to determine the most recent date from a list.

Uploaded by

preetyadav8088
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views3 pages

Emailid Related SQL Ques

The document contains SQL queries for extracting parts of email addresses, updating bonus columns based on salary, and displaying employee details along with department information. It also includes examples of using CASE statements and CHECK constraints in SQL. Additionally, it provides queries to find employees not receiving bonuses and to determine the most recent date from a list.

Uploaded by

preetyadav8088
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 3

INSTR OR SUBSTR QUESTION

Q-1
FOR EMAILID NAME ONLY WITHOUT SERVER AND DOMAIN = SELECT SUBSTR(EMAIL,1,
INSTR(EMAIL, '@')-1) FROM EMP_DETAIL;

(PREETYADAV)

Q-2
FOR SERVER WITH DOMAIN = SELECT SUBSTR(EMAIL, INSTR(EMAIL,'@')+1) FROM EMP_DETAIL;

(GMAIL.COM)

Q-3
FOR DOMAIN ONLY = SELECT SUBSTR(EMAIL, INSTR(EMAIL, '.',INSTR(EMAIL, '@'))+1) FROM
EMP_DETAIL;

(COM)

Q-4
SELECT EMAIL, SUBSTR(EMAIL, INSTR(EMAIL, '@')+1 , INSTR(EMAIL, '.')-1) FROM
EMP_DETAIL WHERE EMP_DETAIL WHERE EMPID=3020;

(GMAIL)

Q-5
SELECT EMAIL, SUBSTR(EMAIL, INSTR(EMAIL,'.',1)+1,
INSTR(EMAIL,'.',INSTR(EMAIL,'.'))-1) FROM EMP_DETAIL WHERE EMPID=3020;
(YADAV)

CASE FUNCTION QUESTION

Q-1
TO UPDATE BONUS COLUMN
SYNTAX
UPDATE NSR_EMP
SET BONUS = CASE
WHEN SAL >= 50000 THEN SAL * 0.10
WHEN SAL >= 40000 AND SAL <= 50000 THEN SAL * 0.08
WHEN SAL >= 30000 AND SAL <= 40000 THEN SAL * 0.05
WHEN SAL <= 30000 THEN SAL * 0.03
END;

BY USING SELECT STATEMENT


SYNTAX
SELECT EMPNO, ENAME , SAL , CASE WHEN SAL >= 50000 THEN SAL * 0.10
WHEN SAL >= 40000 AND SAL <= 50000 THEN SAL * 0.08
WHEN SAL >= 30000 AND SAL <= 40000 THEN SAL * 0.05
WHEN SAL <= 30000 THEN SAL * 0.03
END BONUS
FROM NSR_EMP;

BY USING CHECK CONSTRAINTS( AGE > 18 OR GENDER SHOULD


M/F/MALE/FEMALE/m/f/male/female)
SYNTAX
CREATE TABLE CUST (ID NUMBER(10) UNIQUE , NAME VARCHAR2(10), AGE NUMBER(10) CHECK
(AGE >= 18),
GENDER VARCHAR2(10) CHECK (GENDER IN ('MALE', 'FEMALE' , 'M', 'F', 'male',
'female', 'm', 'f')));

-----------------------------------------------------------------------------------
-----------------------------------------------------------------------
WRITE A QUERY TO DISPLAY ALL THE EMPLOYEE DETAILS ALONG WITH THEIR BONUS AND DEPT
DETAILS , INCASE IF ANY EMP NOT GETTING BONUS THEN DISPLAY THOSE EMP DETAILS

SQL> SELECT E.ENO, E.NAME, E.SAL, B.BONUS, D.DNO AS DEPTNO, D.DNAME, D.LOC FROM
EMP3 E, EMP_BONUS B,
DEPT3 D WHERE E.DEPTNO = D.DNO(+) AND E.ENO = B.ENO(+);

ENO NAME SAL BONUS DEPTNO DNAME LOC


---------- ---------- ---------- ---------- ---------- ---------- ----------
1001 ASHOK 50000 2000 10 HR BNG
1002 LOKESH 55000 20 FIN DEL
1005 CHANDU 75000 5000 20 FIN DEL
1007 RAM 65000 5500 30 IT GGN
1003 PREET 60000 3000 30 IT GGN
1004 GAURAV 70000 40 SALES HYD
1006 PANKAJ 80000 40 SALES HYD

-----------------------------------------------------------------------------------
-------------------------------------------------------------------------

SQL> SELECT E.ENO, E.NAME, E.SAL, B.BONUS, D.DNO AS DEPTNO, D.DNAME, D.LOC FROM
EMP3 E, EMP_BONUS B,
DEPT3 D WHERE E.DEPTNO = D.DNO(+) AND B.ENO = E.ENO(+);

ENO NAME SAL BONUS DEPTNO DNAME LOC


---------- ---------- ---------- ---------- ---------- ---------- ----------
1001 ASHOK 50000 2000 10 HR BNG
1005 CHANDU 75000 5000 20 FIN DEL
1007 RAM 65000 5500 30 IT GGN
1003 PREET 60000 3000 30 IT GGN

-----------------------------------------------------------------------------------
-------------------------------------------------------------------------

SQL> SELECT E.ENO, E.NAME, E.SAL, B.BONUS, D.DNO AS DEPTNO, D.DNAME, D.LOC FROM
EMP3 E, EMP_BONUS B,
DEPT3 D WHERE E.DEPTNO(+) = D.DNO AND E.ENO = B.ENO(+);

ENO NAME SAL BONUS DEPTNO DNAME LOC


---------- ---------- ---------- ---------- ---------- ---------- ----------
1001 ASHOK 50000 2000 10 HR BNG
1003 PREET 60000 3000 30 IT GGN
1005 CHANDU 75000 5000 20 FIN DEL
1007 RAM 65000 5500 30 IT GGN
1006 PANKAJ 80000 40 SALES HYD
1002 LOKESH 55000 20 FIN DEL
1004 GAURAV 70000 40 SALES HYD
***********************************************************************************
************************
Q.WAQ TO DISPLAY WHOS IS NOT GETTING BONUS ALONG WITH DEPT DETAILS.

SQL> SELECT E.ENO, E.NAME, E.SAL, B.BONUS, D.DNO AS DEPTNO, D.DNAME, D.LOC FROM
EMP3 E,
EMP_BONUS B, DEPT3 D WHERE E.DEPTNO = D.DNO(+) AND E.ENO = B.ENO(+) AND
B.BONUS IS NULL;

ENO NAME SAL BONUS DEPTNO DNAME LOC


---------- ---------- ---------- ---------- ---------- ---------- ----------
1002 LOKESH 55000 20 FIN DEL
1004 GAURAV 70000 40 SALES HYD
1006 PANKAJ 80000 40 SALES HYD

***********************************************************************************
********************************

WAQ TO FIND MOST RECENT

SQL> SELECT GREATEST('12-DEC-2024','15-JUL-2025','13-JUN-2025','28-JAN-2026','10-


DEC-2025') FROM DUA
L;

GREATEST('1
-----------
28-JAN-2026

You might also like