我與sql有個約會 sql總結(一)

2021-10-10 23:18:08 字數 1945 閱讀 8246

select * from emp;
select * from emp where deptno = 1;
where 後面是查詢條件,可以接and、or、>=、<=等。如果想查詢滿足多個條件的資料,可以這樣做

select * from emp where deptno = 1 and (sal < 2000 or comm is null);
注意:and、or等邏輯條件有優先順序,為了保證查詢條件的正確性,應該加上(),括號裡面的條件總是最高優先順序。

select ename,deptno,sal from emp;
select sal as salary  from emp;
其中【as】可以省略

select sal salary  from emp;
注意:where 子句裡面不能直接使用別名

-- 這句話會報錯

select sal as salary from emp where salary = 1000 ;

正確的使用方式如下

select *  from ( select sal as salary, comm as commission  from emp ) temp where salary < 5000
select ename||' works as a '||job as msg from emp where deptno=10
select concat(ename, ' works as a ',job) as msg from emp  where deptno=10
select ename + ' works as a ' + job as msg from emp where deptno=10
select ename,sal, 

case when sal <= 2000 then 'underpaid'

when sal >= 4000 then 'overpaid'

else 'ok'

end as status

from emp

select * from emp fetch first 5 rows only
select *  from emp limit 5
select * from emp where rownum <= 5
注意:rownum的特殊性,永遠取不到rownum = 5的資料

select top 5 *  from emp
-- 為空

select * from emp where comm is null

-- 不為空

select * from emp where comm is not null

select coalesce(comm,0)  from emp
注意:coalesce正好適用於所有資料庫,當然oracle中,你也可以使用decode

select ename, job from emp where deptno in (10,20) and (ename like '%i%' or job like '%er')

我與動漫有個約會

小時候自然也是看動畫和漫畫的,曾經很多國產的動畫及從國外引進的動畫都是童年時快樂的回憶.現在已經忘掉許多了.記得的有 天書奇潭 葫蘆兄弟 機器貓 現在似乎都採用了不知道是哪兒的翻譯,叫小叮噹 聖鬥士星矢 等等等等.童年是很快樂的日子.不過現在主要說的是成年後所看的動漫.似乎在老一代看來,動漫是小孩子...

我與OutLook有個約會

我們公司是實行彈性工作制的,一天工作滿8小時即可。我的記性不是太好,總忘記什麼來上班的。所以琢磨著怎麼自己搞乙個這樣的小工具。這不,剛好這幾天工作不是太忙,做了乙個小工具。當你登陸系統時,它會判斷你今天是否是第一次登陸,如果是的話,則向microsoft outlook 傳送乙個8小時後的 約會 這...

我與EXTJS有個約會 插話

由於第一次寫這樣乙個東西,一點經驗都沒有,當開始深入地時候,卻感覺到無法下手了。本打算通過乙個個的小例子或者通過自己最近開發的工作流系統使用到的ext來介紹ext中各個元件的使用,但是感覺這樣不是又落入到俗套就是一些商業系統,源 不能完全公開,最終都無法達到完全共享的目的。自己一直喜歡標新立異,一直...