Sunteți pe pagina 1din 26

------FOR CREATING TABLE

CREATE TABLE EMP2


(ENO NUMBER(4),ENAME VARCHAR2(20),JOB VARCHAR2(20),SAL NUMBER(7,2),HIREDATE DATE);

--------INSERT DATA

INSERT INTO EMP2


VALUES(100,'SURI','SOFT',40000,'30-JUN-2015');

INSERT INTO EMP2


VALUES(101,'RAJA','SOFT',4000,'30-JAN-2015');

INSERT INTO EMP2


VALUES(102,'SYAM','CAT',40300,'4-JAN-2015');

INSERT INTO EMP2


VALUES(103,'ASHOK','SOFT',40300,'4-MAY-2015');

INSERT INTO EMP2


VALUES(104,'SUNIL','EMB',40300,'');

INSERT INTO EMP2


VALUES(105,'BASKAR','EMB',50000,'30-JAN-2015');
INSERT INTO EMP2
VALUES(106,'RAVI','BUSINESS',45000,'22-AUG-2015');

----------FOR NULL EXECUTION,ITS WRONG STATEMENT


INSERT INTO EMP2
VALUES(108,'MANO','BANK','','22-DEC-2015');

INSERT INTO EMP2


VALUES(106,'MANI','',40000,'12-SEP-2015');

INSERT INTO EMP2


VALUES(107,'NAVEEN','SOFT',40300,'4-MAY-2015');

INSERT INTO EMP2


VALUES(120,'KIRAN','SOFT',49000,'30-MAR-2015');

INSERT INTO EMP2


VALUES(109,'HARI','BANK',46000,'30-MAR-2014');

------FOR ----COMPLETE TABLE AFTER TYPE "COMMITE" FOR THIS TABLE OK

COMMITE

-------------DELETE ROW
DELETE
FROM EMP2
WHERE ENAME='KIRAN';
-------------FOR CHECK
SQL>SELECT ENAME,ENO,SAL,JOB,HIREDATE
FROM EMP2;

-----------FOR TOTAL DISPLAY TABLE


SQL>SELECT*FROM EMP2;

----------FOR MULTIPLECATION

SQL>SELECT ENAME,
SAL*12,
FROM EM2;

-----------FOR SET PAGE SIZE


SQL>SET PAGESIZE 9
SQL>SELECT*FROM EMP2;

------------FOR SPECIFIC
SQL>SELECT
SAL
FROM EMP2
WHERE ENO=104;

------------FOR SPECIFIC ROW


SQL>SELECT
JOB
FROM EMP2
WHERE ENO=104;

------------FOR SPECIFIC ROW


SQL>SELECT
ENAME
FROM EMP2
WHERE ENO=104;

-------------FOR SPECIFIC
SELECT
SAL
FROM EMP2
WHERE ENAME='RAVI';

---------MORE THAN SAL


SELECT*
FROM EMP2
WHERE SAL>5000;

---------MORE THAN HIREDATE


SELECT*
FROM EMP2
WHERE HIREDATE>'1-JAN-2015';

------------LESS THAN HIRE DATE


SELECT*
FROM EMP2
WHERE HIREDATE<'1-JAN-2015';

---------------EMPLOYEE SOFT AND MORE THAN 40000


SELECT*
FROM EMP2
WHERE JOB='SOFT'
AND
SAL>40000;
SELECT*
FROM EMP2
WHERE JOB='SOFT'
OR
SAL>40000;

SELECT*
FROM EMP2
WHERE (JOB='SOFT'
OR
JOB='EMB')
AND
SAL>40000;

SELECT*
FROM EMP2
WHERE (JOB='SOFT'
AND
JOB='EMB');

-------BETWEEN VALUES

SELECT*
FROM EMP2
WHERE SAL BETWEEN 40000 AND 45000;

---------BETWEEN DATES
SELECT*
FROM EMP2
WHERE HIREDATE BETWEEN '01-JAN-2015' AND '01-JUN-2015';
SELECT*
FROM EMP2
WHERE JOB IN('EMB','BUSINESS');

SELECT*
FROM EMP2
WHERE JOB NOT IN('EMB','BUSINESS');

------------JAN MONTH FROM EMP2


SELECT*
FROM EMP2
WHERE HIREDATE LIKE'%JAN%';

------------15 YEAR FROM EMP2


SELECT*
FROM EMP2
WHERE HIREDATE LIKE'%15%';

---------------- 8 CHAR JOB NAME SELECT


SELECT*
FROM EMP2
WHERE JOB LIKE'%________%';

---------------5 DIGITS SAL


SELECT*
FROM EMP2
WHERE SAL LIKE'%______%';

------------- 4 DIGITS SAL


SELECT*
FROM EMP2
WHERE job LIKE'%____%';

SELECT*
FROM EMP2
WHERE ename LIKE'\';

----------------------WHOSE SAL NOT NULL


SELECT*
FROM EMP2
WHERE SAL IS NOT NULL;

----------------------WHOSE SAL NULL


SELECT*
FROM EMP2
WHERE SAL IS NULL;

----------------------WHOSE job NULL


SELECT*
FROM EMP2
WHERE JOB IS NULL;

SELECT*
FROM EMP2
WHERE JOB IN ('BANK','%SOFT%');

--------------SECOND CHAR FROM LAST IS 'A' IN NAME


SELECT*
FROM EMP2
WHERE JOB LIKE'_A%';

--------------SECOND CHAR FROM LAST IS 'V' IN NAME


SELECT*
FROM EMP2
WHERE ENAME LIKE'%V_';

---------------FOR BANK AND SOFT DISPLAY


SELECT*
FROM EMP2
WHERE JOB IN ('BANK','SOFT');

-----------FOR CREATE TABLE


CREATE TABLE CUSTOMER
(CID NUMBER(4),
CNAME VARCHAR2(20),
CADDR VARCHAR2(100),
EMAIL VARCHAR2(30),
PHONE NUMBER(11),
PHOTO BFILE);

-------FOR ASENDING ORDER


SELECT*
FROM EMP2
WHERE HIREDATE LIKE '%15'
ORDER BY ENAME ASC;

----------FOR DASSENDING ORDER


SELECT*
FROM EMP2
WHERE HIREDATE LIKE '%15'
ORDER BY SAL DESC;

SELECT*
FROM EMP2
WHERE HIREDATE LIKE '%15'
ORDER BY SAL ASC;

SELECT*
FROM EMP2
WHERE HIREDATE LIKE '%15'
ORDER BY SAL ASC;

SELECT*
FROM EMP2
ORDER BY SAL ASC;

---------ANOTHER TABLE CREATION


CREATE TABLE CUS
(CID NUMBER(5),CNAME VARCHAR(20),COUNTRY VARCHAR(20));

INSERT INTO CUS


VALUES(1001,'BAHUBALI','IND');

INSERT INTO CUS


VALUES(1002,'BALLADEVA','USA');

INSERT INTO CUS


VALUES(1003,'DEVASENA','IND');

INSERT INTO CUS


VALUES(1003,'PRANATHI','USA');

/*
----------FOR DISPLAY COUNTRY
SELECT COUNTRY FROM CUS;

--------TO AVOID DUPLICATES


SELECT DISTINCT COUNTRY FROM CUS;

--------DROPING TABLE
DROP TABLE EMP2;

------------SHOW IN RECYCLEBIN
SELECT*FROM RECYCLEBIN;
SHOW RECYCLEBIN;

-------RESTORE TABLE
FLASHBACK TABLE EMP2 TO BEFORE DROP;

PURGE TABLE EMP2;

PURGE RECYCLEBIN;

DROP TABLE DEPT PURGE;

*/

------------DUAL TABLE
============================================================

SELECT 'HELLO' FROM DUAL;

SELECT 100 FROM DUAL;

------------UPPER()
SELECT UPPER ('hhhhiiiiiii')FROM DUAL;
-----------LOWER()
SELECT LOWER('HI')FROM DUAL;

----------EMP NAME LOWER CASE


SELECT ENO,LOWER(ENAME) AS NAME,SAL FROM EMP2;

SELECT ENO,UPPER(ENAME) AS ENAME,SAL FROM EMP2;

-----------UPDATE ENAME
UPDATE EMP2 SET ENAME=LOWER(ENAME);

UPDATE EMP2 SET ENAME=UPPER(ENAME);

----------INIT CAPITAL LATTER

SELECT INITCAP('ravi kumar') FROM DUAL;

-----------LENGTH()
SELECT LENGTH('RAVIKUMAR') FROM DUAL;

--------------------LENGTH FORM NAMES


SELECT ENAME, LENGTH(ENAME) FROM EMP2;

--------------------
SELECT*
FROM EMP2
WHERE ENAME LIKE' ';

SELECT*
FROM EMP2
WHERE LENGTH(ENAME)=4;

SELECT ENAME,SAL,ENO
FROM EMP2
ORDER BY LENGTH(ENAME) ASC;

--------------SUBSTRACT()
SELECT SUBSTR('RAVI KUMAR',8,4)
FROM DUAL;

SELECT SUBSTR('RAVI KUMAR',-6,4)


FROM DUAL;

SELECT SUBSTR('RAVI KUMAR',6,4)


FROM DUAL;

---------THE NAME START WITH 'S'


SELECT*
FROM EMP2
WHERE SUBSTR(ENAME,1,1)='S';

SELECT*
FROM EMP2
WHERE SUBSTR(ENAME,2,1)='U';

SELECT*
FROM EMP2
WHERE SUBSTR(ENAME,-1,1)='I';

SELECT*
FROM EMP2
WHERE ENAME LIKE'A%A'
OR
ENAME LIKE 'B%B'
OR
ENAME LIKE 'N%N';

SELECT*
FROM EMP2
WHERE SUBSTR(ENAME,-1,1)=SUBSTR(ENAME,-1,1);

------------DELETE ALL ROWS

TRUNCATE TABLE EMP2;


STRING FUNCTIONS
=============================================================================
---------CONVERT LOWER TO UPPER CASE
SELECT UPPER('hello') FROM DUAL;
SELECT ENO,UPPER(ENAME)AS NAME,SAL FROM EMP2;
-------------UPDATE ENAME OF EMP2 LOWER CASE
UPDATE EMP2 SET ENAME=UPPER(ENAME);

-----------------LOWER()
SELECT LOWER('HELLO')FORM DUAL;
SELECT ENO,LOWER(ENAME)AS NAME,SAL FROM EMP2;
-------------UPDATE ENAME OF EMP2 UPPER CASE
UPDATE EMP2 SET ENAME=LOWER(ENAME);

SELECT*
FROM EMP2
WHERE ENAME='RAVI';

SELECT*
FROM EMP2
WHERE LOWER(ENAME)='RAVI';

-----------------RTRIM()
SELECT
RTRIM('HELLOWXXXXXXX','X')
FROM DUAL;

--------------LTRIM()
SELECT
LTRIM('XXXXXXXXXHELLOW','X')
FROM DUAL;

--------------TRIM
SELECT
TRIM(BOTH'X'FROM'XXXHELLOWXXXX')
FROM DUAL;
SELECT
TRIM(LEADING'X'FROM'XXXHELLOW')
FROM DUAL;

SELECT
TRIM(TRAILING'X'FROM'HELLOWXXXXXX')
FROM DUAL;

-------------RPAD()

RPAD(STR,LENGTH,CHAR)

SELECT RPAD('HELLO',10,'*')
FROM DUAL;

SELECT RPAD('HELLO',6,'*')
FROM DUAL;

SELECT RPAD('',10,'*')
FROM DUAL;

SELECT RPAD('*',10,'*')
FROM DUAL;

SELECT RPAD(' ',10,'*')


FROM DUAL;

----------EX
ACCOUNT NUMBER DISPLAY
LIKE ************2345

FOR THIS

SELECT
RPAD('*',7,'*')||SUBSTR(012345678912,-4,4)
FROM DUAL;

SELECT ENO,ENAME,RPAD('*',SAL/10000,'*') AS SAL


FROM EMP2;

SELECT ENO,ENAME,RPAD('*R',SAL/10000,'*') AS SAL


FROM EMP2;

------------------------------LPAD

SELECT LPAD('HELLO',6,'*')
FROM DUAL;

SELECT LPAD('',10,'*')
FROM DUAL;

SELECT LPAD('*',10,'*')
FROM DUAL;

SELECT LPAD(' ',10,'*')


FROM DUAL;

----------EX
ACCOUNT NUMBER DISPLAY
LIKE ************2345

FOR THIS

SELECT
LPAD('*',7,'*')||SUBSTR(012345678912,-4,4)
FROM DUAL;

SELECT
LPAD('*L',7,'*')||SUBSTR(012345678912,-4,4)
FROM DUAL;

SELECT ENO,ENAME,LPAD('*L',SAL/10000,'*') AS SAL


FROM EMP2;
---------------------REPLACE

SELECT
REPLACE('HELLO','ELL','ABC')
FROM DUAL;

SELECT
REPLACE('HELLO','L','ABC')
FROM DUAL;

SELECT
INITCAP(SUBSTR(ENAME,1,3))
FROM EMP2;

SELECT
INITCAP(SUBSTR(ENAME,1,2))
FROM EMP2;

SELECT
INITCAP(SUBSTR(ENAME,1,3))||REPLACE(HIREDATE,'-','') AS USERIDS
FROM EMP2;

SELECT
REPLACE(HIREDATE,'-','') AS USERIDS
FROM EMP2;

--------------TRANSLATE
SELECT
TRANSLATE('HELLO','ELO','ABC')
FROM DUAL;

SELECT
TRANSLATE('HELLO','ELL','ABC')
FROM DUAL;

SELECT
TRANSLATE(09876543213,'0123456789','@#$%^&*<>+') AS SAL
FROM DUAL;
SELECT ENAME,
TRANSLATE(SAL,'0123456789','@#><?:+$%&*^') AS SAL
FROM EMP2;

CREATE TABLE EMP44


(ENO NUMBER(4),ENAME VARCHAR(20),DEPTNO NUMBER(3));

INSERT INTO EMP44


VALUES(100,'VENKY',10);

INSERT INTO EMP44


VALUES(101,'SRINU',20);

INSERT INTO EMP44


VALUES(102,'JAGAN',30);

INSERT INTO EMP44


VALUES(103,'GOWTHAM',10);

INSERT INTO EMP44


VALUES(104,'DENESH',40);

CREATE TABLE DEPT44


(DNO NUMBER(4),DNAME VARCHAR(20));

INSERT INTO DEPT44


VALUES(10,'RESERCH');

INSERT INTO DEPT44


VALUES(20,'SALES');

INSERT INTO DEPT44


VALUES(30,'ACC');
INSERT INTO DEPT44
VALUES(40,'OPERATIONS');

------------------------FOR JOINS
====================================================

CREATE TABLE EMPJ


(ENO NUMBER(4),ENAME VARCHAR(20), DNO NUMBER(3),SAL NUMBER(10));

INSERT INTO EMPJ


VALUES(10,'SRINU',1,1000);

INSERT INTO EMPJ


VALUES(20,'GOPI',2,2000);

INSERT INTO EMPJ


VALUES(30,'THARUN',3,3000);

INSERT INTO EMPJ


VALUES(40,'NAIDU',4,4000);

INSERT INTO EMPJ


VALUES(50,'VENKY',4,5000);

-----------------DEPARTMENT

CREATE TABLE DEPTJ


(DNO NUMBER(3),DNAME VARCHAR2(20));

INSERT INTO DEPTJ


VALUES(1,'BANK');
INSERT INTO DEPTJ
VALUES(2,'CLERK');

INSERT INTO DEPTJ


VALUES(3,'MNGR');

INSERT INTO DEPTJ


VALUES(4,'ACC');

---------------------------------FOR MULTI DEPT TABLE2

CREATE TABLE DEPT1J


(DNO NUMBER(3),DNAME VARCHAR2(20),LID NUMBER(4));

INSERT INTO DEPT1J


VALUES(1,'BANK',11);

INSERT INTO DEPT1J


VALUES(2,'CLERK',12);

INSERT INTO DEPT1J


VALUES(3,'MNGR',13);

INSERT INTO DEPT1J


VALUES(4,'ACC',11);

INSERT INTO DEPT1J


VALUES(5,'UN MATCH',999);

-----------------------------COUNTRY

CREATE TABLE COUNJ


(CID NUMBER(4) , CNAME VARCHAR(20), CLID NUMBER(4));

INSERT INTO COUNJ


VALUES(1,'IND',11);

INSERT INTO COUNJ


VALUES(2,'USA',12);

INSERT INTO COUNJ


VALUES(3,'PKS',13);

INSERT INTO COUNJ


VALUES(4,'US',14);

INSERT INTO COUNJ


VALUES(5,'UK',15);

---------------------JOIN CONDITIONS
=======================================

EQUIJOIN
-----------------

SELECT E.ENO,E.ENAME,E.DNO,E.SAL,D.DNO,D.DNAME
FROM EMPJ E,DEPTJ D
WHERE E.DNO=D.DNO;
SELECT E.ENO,E.ENAME,E.DNO,E.SAL,D.DNAME
FROM EMPJ E,DEPTJ D
WHERE E.DNO=D.DNO;

---------------------MULTI TABLE EQUI JOIN


-------------------------------------------------------
SELECT E.ENO,E.ENAME,E.DNO,D.DNAME,C.CNAME
FROM EMPJ E,DEPT1J D,COUNJ C
WHERE E.DNO=D.DNO
AND
D.LID=C.CLID;

-------------ANSY
-----------------------------

ON CONDITION
----------------

SELECT E.ENO,E.ENAME,E.DNO,E.SAL,D.DNAME
FROM EMPJ E JOIN DEPTJ D
ON E.DNO=D.DNO;

USING CONDITION
--------------------------

SELECT E.ENO,E.ENAME,DNO,E.SAL,D.DNAME
FROM EMPJ E JOIN DEPTJ D
USING (DNO);

---------------------MULTI TABLE EQUI JOIN

SELECT E.ENO,E.ENAME,E.DNO,D.DNAME,C.CNAME
FROM EMPJ E JOIN DEPT1J D
ON E.DNO=D.DNO
JOIN COUNJ C
ON D.LID=C.CLID;
NON EQUI
=========================

CREATE TABLE EMPJ


(ENO NUMBER(4),ENAME VARCHAR(20), DNO NUMBER(3),SAL NUMBER(10));

INSERT INTO EMPJ


VALUES(10,'SRINU',1,1000);

INSERT INTO EMPJ


VALUES(20,'GOPI',2,2000);

INSERT INTO EMPJ


VALUES(30,'THARUN',3,3000);

INSERT INTO EMPJ


VALUES(40,'NAIDU',4,4000);

INSERT INTO EMPJ


VALUES(50,'VENKY',4,5000);

INSERT INTO EMPJ


VALUES(60,'VENKY','',6000);

-----------------DEPARTMENT

CREATE TABLE DEPTJ


(DNO NUMBER(3),DNAME VARCHAR2(20));

INSERT INTO DEPTJ


VALUES(1,'BANK');
INSERT INTO DEPTJ
VALUES(2,'CLERK');

INSERT INTO DEPTJ


VALUES(3,'MNGR');

INSERT INTO DEPTJ


VALUES(4,'ACC');

INSERT INTO DEPTJ


VALUES(5,'ACC');

LEFT OUTER JOIN


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

SELECT E.ENO,E.ENAME,E.SAL,E.DNO,D.DNAME
FROM EMPJ E,DEPTJ D
WHERE E.DNO=D.DNO(+);

RIGHT OUTER JOIN


----------------------------------
SELECT E.ENO,E.ENAME,E.SAL,D.DNO,D.DNAME
FROM EMPJ E,DEPTJ D
WHERE E.DNO(+)=D.DNO;

FULL OUTER JOIN


----------------------------
SELECT E.ENO,E.ENAME,E.SAL,E.DNO,D.DNAME
FROM EMPJ E,DEPTJ D
WHERE E.DNO=D.DNO(+)
UNION
SELECT E.ENO,E.ENAME,E.SAL,D.DNO,D.DNAME
FROM EMPJ E,DEPTJ D
WHERE E.DNO(+)=D.DNO;
ANSY
--------------------------------------------

LEFT OUTER JOIN


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

SELECT E.ENO,E.ENAME,E.SAL,E.DNO,D.DNAME
FROM EMPJ E LEFT OUTER JOIN DEPTJ D
ON E.DNO=D.DNO;

SELECT E.ENO,E.ENAME,E.SAL,DNO,D.DNAME
FROM EMPJ E LEFT OUTER JOIN DEPTJ D
USING (DNO);

RIGHT OUTER JOIN


----------------------------------
SELECT E.ENO,E.ENAME,E.SAL,D.DNO,D.DNAME
FROM EMPJ E RIGHT OUTER JOIN DEPTJ D
ON E.DNO=D.DNO;

SELECT E.ENO,E.ENAME,E.SAL,DNO,D.DNAME
FROM EMPJ E RIGHT OUTER JOIN DEPTJ D
USING (DNO);

FULL OUTER JOIN


----------------------------
SELECT E.ENO,E.ENAME,E.SAL,E.DNO,D.DNAME
FROM EMPJ E FULL OUTER JOIN DEPTJ D
ON E.DNO=D.DNO;

SELECT E.ENO,E.ENAME,E.SAL,DNO,D.DNAME
FROM EMPJ E FULL OUTER JOIN DEPTJ D
USING (DNO);

--------------FOR SELF JOIN


-------------------------------------------
CREATE TABLE EMPS
(ENO NUMBER(4),ENAME VARCHAR(20), DNO NUMBER(3),SAL NUMBER(10),MGR NUMBER(3));

INSERT INTO EMPS


VALUES(10,'SRINU',1,1000,NULL);

INSERT INTO EMPS


VALUES(20,'GOPI',2,2000,1);

INSERT INTO EMPS


VALUES(30,'THARUN',3,3000,2);

INSERT INTO EMPS


VALUES(40,'NAIDU',4,4000,3);

INSERT INTO EMPS


VALUES(50,'VENKY',5,5000,4);

-----------------CONDITION FOR SELF


SELECT X.ENO,X.ENAME,Y.ENAME AS MGR
FROM EMPS X,EMPS Y
WHERE X.DNO=Y.MGR;

--------------------ANSY
----------------------------------
SELECT X.ENO,X.ENAME,Y.ENAME AS MGR
FROM EMPS X JOIN EMPS Y
ON X.DNO=Y.MGR;

==============================================================

Q) EARN MORE THAN MANAGER

SELECT X.ENO,X.ENAME,Y.ENAME AS MGR


FROM EMPS X JOIN EMPS Y
ON X.SAL>Y.SAL
AND X.DNO=Y.MGR;
CREATE TABLE SALGRADE
(ENO NUMBER(3),ENAME VARCHAR(20),LSAL NUMBER(6),HSAL NUMBER(6),GRADE NUMBER(2));

INSERT INTO SALGRADE


VALUES(1,A,1000,2000,1);

INSERT INTO SALGRADE


VALUES(2,B,2001,3000,2);

INSERT INTO SALGRADE


VALUES(3,C,3001,4000,3);

INSERT INTO SALGRADE


VALUES(4,D,4001,5000,4);

INSERT INTO SALGRADE


VALUES(5,E,5001,6000,5);

S-ar putea să vă placă și