Monday, October 22, 2012

SQL Queries For Beginners -1

 SQL Queries For Beginners -1

1) Display the details of all employees
SQL>Select * from emp;

2) Display the depart information from department table
SQL>select * from dept;

3) Display the name and job for all the employees
SQL>select ename,job from emp;

4) Display the name and salary for all the employees
SQL>select ename,sal from emp;

5) Display the employee no and totalsalary for all the employees
SQL>select empno,ename,sal,comm, sal+nvl(comm,0) as"total salary" from
emp;

6) Display the employee name and annual salary for all employees.
SQL>select ename, 12*(sal+nvl(comm,0)) as "annual Sal" from emp;

7) Display the names of all the employees who are working in depart number 10.
SQL>select emame from emp where deptno=10;

8) Display the names of all the employees who are working as clerks and drawing a salary more than 3000.
SQL>select ename from emp where job='CLERK' and sal>3000;

9) Display the employee number and name who are earning comm.
SQL>select empno,ename from emp where comm is not null;

10) Display the employee number and name who do not earn any comm.
SQL>select empno,ename from emp where comm is null;

11) Display the names of employees who are working as clerks,salesman or analyst and drawing a salary more than 3000.
SQL>select ename from emp where job='CLERK' OR JOB='SALESMAN'
OR JOB='ANALYST' AND SAL>3000;

12) Display the names of the employees who are working in the company for the past 5 years;
SQL>select ename from emp where to_char(sysdate,'YYYY')-to_char(hiredate,'YYYY')>=5;

13) Display the list of employees who have joined the company before
30-JUN-90 or after 31-DEC-90.
a)select ename from emp where hiredate < '30-JUN-1990' or hiredate >
'31-DEC-90';

14) Display current Date.
SQL>select sysdate from dual;

15) Display the list of all users in your database(use catalog table).
SQL>select username from all_users;

16) Display the names of all tables from current user;
SQL>select tname from tab;

17) Display the name of the current user.
SQL>show user;

18) Display the names of employees working in depart number 10 or 20 or 40 or employees working as CLERKS,SALESMAN or ANALYST.
SQL>select ename from emp where deptno in(10,20,40) or job
in('CLERKS','SALESMAN','ANALYST');

19) Display the names of employees whose name starts with alaphabet S.
SQL>select ename from emp where ename like 'S%';

20) Display the Employee names for employees whose name ends with alaphabet S.
SQL>select ename from emp where ename like '%S';

21) Display the names of employees whose names have second alphabet A in their names.
SQL>select ename from emp where ename like '_A%';

22) select the names of the employee whose names is exactly five characters in length.
SQL>select ename from emp where length(ename)=5;

23) Display the names of the employee who are not working as MANAGERS.
SQL>select ename from emp where job not in('MANAGER');

24) Display the names of the employee who are not working as SALESMAN OR CLERK OR ANALYST.
SQL>select ename from emp where job not in ('SALESMAN','CLERK','ANALYST');

25) Display all rows from emp table.The system should wait after every
screen full of informaction.
SQL>set pause on;

26) Display the total number of employee working in the company.
SQL>select count(*) from emp;

27) Display the total salary beiging paid to all employees.
SQL>select sum(sal) from emp;

28) Display the maximum salary from emp table.
SQL>select max(sal) from emp;

29) Display the minimum salary from emp table.
SQL>select min(sal) from emp;

30) Display the average salary from emp table.
SQL>select avg(sal) from emp;

31) Display the maximum salary being paid to CLERK.
SQL>select max(sal) from emp where job='CLERK';

32) Display the maximum salary being paid to depart number 20.
SQL>select max(sal) from emp where deptno=20;

33) Display the minimum salary being paid to any SALESMAN.
SQL>select min(sal) from emp where job='SALESMAN';

34) Display the average salary drawn by MANAGERS.
SQL>select avg(sal) from emp where job='MANAGER';

35) Display the total salary drawn by ANALYST working in depart number 40.
SQL>select sum(sal) from emp where job='ANALYST' and deptno=40;

36) Display the names of the employee in order of salary i.e the name of the employee earning lowest salary should salary appear first.
SQL>select ename from emp order by sal;

37) Display the names of the employee in descending order of salary.
a)select ename from emp order by sal desc;

38) Display the names of the employee in order of employee name.
a)select ename from emp order by ename;

39) Display empno,ename,deptno,sal sort the output first base on name and within name by deptno and with in deptno by sal.
SQL>select empno,ename,deptno,sal from emp order by

40) Display the name of the employee along with their annual salary(sal*12).The name of the employee earning highest annual salary should apper first.
SQL>select ename,sal*12 from emp order by sal desc;

41) Display name,salary,hra,pf,da,total salary for each employee. The output should be in the order of total salary,hra 15% of salary,da 10% of salary,pf 5% salary,total salary will be(salary+hra+da)-pf.
SQL>select ename,sal,sal/100*15 as hra,sal/100*5 as pf,sal/100*10 as
da, sal+sal/100*15+sal/100*10-sal/100*5 as total from emp;

42) Display depart numbers and total number of employees working in each department.
SQL>select deptno,count(deptno)from emp group by deptno;

43) Display the various jobs and total number of employees within each job group.
SQL>select job,count(job)from emp group by job;

44) Display the depart numbers and total salary for each department.
SQL>select deptno,sum(sal) from emp group by deptno;

45) Display the depart numbers and max salary for each department.
SQL>select deptno,max(sal) from emp group by deptno;

46) Display the various jobs and total salary for each job
SQL>select job,sum(sal) from emp group by job;

47) Display the various jobs and total salary for each job
SQL>select job,min(sal) from emp group by job;

48) Display the depart numbers with more than three employees in each dept.
SQL>select deptno,count(deptno) from emp group by deptno having
count(*)>3;

49) Display the various jobs along with total salary for each of the jobs
where total salary is greater than 40000.
SQL>select job,sum(sal) from emp group by job having sum(sal)>40000;

50) Display the various jobs along with total number of employees in each job.The output should contain only those jobs with more than three employees.
SQL>select job,count(empno) from emp group by job having count(job)>3;

No comments:

Post a Comment