ÉèΪÊ×Ò³ ¼ÓÈëÊÕ²Ø

TOP

¼òµ¥sql²¿·ÖÇ¿»¯Á·Ï°Ìâ
2015-11-21 01:35:45 À´Ô´: ×÷Õß: ¡¾´ó ÖРС¡¿ ä¯ÀÀ:0´Î
Tags£º¼òµ¥ sql ²¿·Ö Ç¿»¯ ϰÌâ

¼òµ¥²éѯ²¿·ÖsqlÁ·Ï°Ìâ

-- Ñ¡Ôñ²¿ÃÅ30ÖеÄËùÓÐÖ°¹¤
select * from emp where deptno = 30;

-- ÁгöËùÓÐÒµÎñÔ±(CLERK)µÄÐÕÃû£¬±àºÅ£¬ºÍ²¿ÃűàºÅ
select e.ename, e.empno, e.deptno from emp e where e.job = 'CLERK';

-- ÕÒ³ö½±½ð¸ßÓÚн½ðµÄÔ±¹¤
select * from emp where comm > sal;

-- ÕÒ³ö½±½ð¸ßÓÚн½ðµÄ60%µÄÔ±¹¤
select * from emp where comm > sal * 0.6;

-- ÕÒ³ö²¿ÃÅ10ÖÐËùÓо­Àí(MANAGER)ºÍ²¿ÃÅ20ÖÐËùÓÐÒµÎñÔ±(CLERK)µÄÏêϸ×ÊÁÏ
select * from emp e 
where e.deptno = 10 and e.job = 'MANAGER' 
    or e.deptno = 20 and e.job = 'CLERK';

select * from emp e 
where (e.deptno = 10 and e.job = 'MANAGER') 
    or (e.deptno = 20 and e.job = 'CLERK');

select * from emp e where e.deptno = 10 and e.job = 'MANAGER'
union 
select * from emp e where e.deptno = 20 and e.job = 'CLERK';

-- ÕÒ³ö²¿ÃÅ10ÖÐËùÓо­Àí(MANAGER),²¿ÃÅ20ÖÐËùÓÐÒµÎñÔ±(CLERK),¼È²»ÊǾ­ÀíÓÖ²»ÊÇÒµÎñÔ±µ«Æäнˮ´óÓÚµÈÓÚ2000µÄËùÓÐÔ±¹¤µÄÏêϸ×ÊÁÏ
select * from emp e where e.deptno = 10 and e.job = 'MANAGER' 
union
select * from emp e where e.deptno = 20 and e.job = 'CLERK'
union 
select * from emp e where e.sal > 2000 and e.job not in('MANAGER', 'CLERK');

-- ÕÒ³öÊÕÈ¡½±½ðµÄÔ±¹¤µÄ²»Í¬¹¤×÷
select distinct e.job from emp e;

-- ÕÒ³ö²»ÊÕÈ¡½±½ð»òÊÕÈ¡µÄ½±½ðµÍÓÚ100µÄÔ±¹¤
select * from emp e where e.comm is null or e.comm < 100;

-- ÕÒ³ö¸÷Ôµ¹ÊýµÚ3ÌìÊܹ͵ÄËùÓÐÔ±¹¤
select * from emp e where e.hiredate between last_day(hiredate)-3 and last_day(hiredate);

-- ÕÒ³öÔçÓÚ30ÄêǰÊܹ͵ÄÔ±¹¤
select * from emp e where (sysdate - e.hiredate)/365 > 30;

-- ÒÔÊ××Öĸ´óдµÄ·½Ê½ÏÔʾËùÓÐÔ±¹¤µÄÐÕÃû
select initcap(ename) from emp;

-- ÏÔʾÕýºÃΪ5¸ö×Ö·ûµÄÔ±¹¤ÐÕÃû
select * from emp where length(ename) = 5;

-- ÏÔʾ²»´øÓС±R¡±µÄÔ±¹¤ÐÕÃû
select * from emp where ename not like '%K%';

-- ÏÔʾËùÓÐÔ±¹¤ÐÕÃûµÄǰÈý¸ö×Ö·û
select substr(ename, 0, 3) from emp;

-- ÏÔʾËùÓÐÔ±¹¤µÄÐÕÃû£¬²¢Óá¯a¡¯Ìæ»»ËùÓС¯A¡¯
select replace(ename, 'A', 'a') from emp;

-- ÏÔʾÂú30Äê·þÎñÄêÏÞµÄÔ±¹¤ÐÕÃûºÍÊܹÍÈÕÆÚ
select * from emp where (sysdate - hiredate)/365 > 30;

-- ÏÔʾԱ¹¤µÄÏêϸ×ÊÁÏ£¬°´ÐÕÃûÓÉ´óµ½Ð¡ÅÅÐò
select * from emp order by ename desc;

-- ÏÔʾԱ¹¤µÄÐÕÃûºÍÊܹÍÈÕÆÚ£¬¸ù¾ÝÆä·þÎñÄêÏÞ£¬½«×îÀϵÄÔ±¹¤ÅÅÔÚ×îÇ°Ãæ
select ename, hiredate from emp order by hiredate asc;

-- ÏÔʾËùÓÐÔ±¹¤µÄÐÕÃû£¬¹¤×÷ºÍн½ð£¬°´¹¤×÷½µÐòÅÅÁУ¬Èô¹¤×÷ÏàͬÔò°´Ð½½ðÉýÐòÅÅÐò
select ename, job, sal from emp order by job desc, sal asc;
select ename, job, sal from emp order by 2 desc, 3;

-- ÏÔʾËùÓÐÔ±¹¤µÄÐÕÃû£¬¼ÓÈ빫˾µÄÄê·ÝºÍÔ·ݣ¬°´ÊܹÍÈÕÆÚËùÔÚµÄÔÂÅÅÐò£¬ÈôÔ·ÝÏàͬ£¬Ôò½«×îÔçÄê·ÝÅÅÔÚ×îÇ°Ãæ
select ename, to_number(to_char(hiredate, 'yyyy')) Year, to_number(to_char(hiredate, 'mm')) from emp order by 3 desc, 2 asc;

-- ÏÔʾһ¸öÔÂΪ30ÌìµÄÇé¿öËùÔ±¹¤µÄÈÕн½ð£¬ºöÂÔÓàÊý
select round(sal/30) ÈÕн from emp;

-- ÕÒ³öÔÚ(ÈκÎÄê·Ý)2ÔÂÊÜÆ¸µÄËùÓÐÔ±¹¤
select * from emp where to_number(to_char(hiredate, 'mm')£©= 2;

-- ¶Ôÿ¸öÔ±¹¤£¬ÏÔʾÆä¼ÓÈ빫˾µÄÌìÊý
select ename, round(sysdate - hiredate) Days from emp;

-- ÏÔʾÐÕÃûÖÐÈÎÒâλÖðüº¬¡°A¡±µÄËùÓÐÔ±¹¤ÐÕÃû
select * from emp where upper(ename) like '%A%';

-- ÒÔÄêÔÂÈÕ·½Ê½ÏÔʾËùÓÐÔ±¹¤µÄ·þÎñÄêÏÞ
select ename, hiredate, 
trunc(months_between(sysdate, hiredate) /12)  year  ,
trunc(mod(months_between(sysdate, hiredate) ,  12 ) ) months  , 
trunc(sysdate - add_months(hiredate,months_between(sysdate, hiredate))) day
from emp ;


¡¾´ó ÖРС¡¿¡¾´òÓ¡¡¿ ¡¾·±Ìå¡¿¡¾Í¶¸å¡¿¡¾Êղء¿ ¡¾ÍƼö¡¿¡¾¾Ù±¨¡¿¡¾ÆÀÂÛ¡¿ ¡¾¹Ø±Õ¡¿ ¡¾·µ»Ø¶¥²¿¡¿
·ÖÏíµ½: 
ÉÏһƪ£ºÐ¡±´_redisѧϰĿ±ê ÏÂһƪ£ºÊ¹ÓÃCÓïÑÔÁ¬½Ómssql server2008¨..

ÆÀÂÛ

ÕÊ¡¡¡¡ºÅ: ÃÜÂë: (ÐÂÓû§×¢²á)
Ñé Ö¤ Âë:
±í¡¡¡¡Çé:
ÄÚ¡¡¡¡ÈÝ: