精妙SQL語句

2021-04-17 03:26:40 字數 2881 閱讀 9579

說明:複製表(只複製結構,源表名:a新錶名:b)

sql:select*intobfromawhere1<>1

說明:拷貝表(拷貝資料,源表名:a目標表名:b)

sql:insertintob(a,b,c)selectd,e,ffromb;

sql:selecta.title,a.username,b.adddatefromtablea,(selectmax(adddate)adddatefromtablewheretable.title=a.title)b

說明:外連線查詢(表名1:a表名2:b)

sql:selecta.a,a.b,a.c,b.c,b.d,b.ffromaleftoutjoinbona.a=b.c

sql:select*from日程安排wheredatediff('minute',f開始時間,getdate())>5

說明:兩張關聯表,刪除主表中已經在副表中沒有的資訊

sql:

deletefrominfowherenotexists(select*frominfobzwhereinfo.infid=infobz.infid)

說明:--

sql:

selecta.num,a.name,b.upd_date,b.prev_upd_date

fromtable1,

(selectx.num,x.upd_date,y.upd_dateprev_upd_date

from(selectnum,upd_date,inbound_qty,stock_onhand

fromtable2

whereto_char(upd_date,'yyyy/mm')=to_char(sysdate,'yyyy/mm'))x,

(selectnum,upd_date,stock_onhand

fromtable2

whereto_char(upd_date,'yyyy/mm')=

to_char(to_date(to_char(sysdate,'yyyy/mm')¦¦'/01','yyyy/mm/dd')-1,'yyyy/mm'))y,

wherex.num=y.num(+)

andx.inbound_qty+nvl(y.stock_onhand,0)<>x.stock_onhand)b

wherea.num=b.num

說明:--

sql:

select*fromstudentinfowherenotexists(select*fromstudentwherestudentinfo.id=student.id)and系名稱='"&strdepartmentname&"'and專業名稱='"&strprofessionname&"'orderby性別,生源地,高考總成績

說明:從中去一年的各單位**費統計(**費定額賀電化肥清單兩個表**)

sql:

selecta.userper,a.tel,a.standfee,to_char(a.telfeedate,'yyyy')astelyear,

sum(decode(to_char(a.telfeedate,'mm'),'01',a.factration))asjan,

sum(decode(to_char(a.telfeedate,'mm'),'02',a.factration))asfri,

sum(decode(to_char(a.telfeedate,'mm'),'03',a.factration))a**ar,

sum(decode(to_char(a.telfeedate,'mm'),'04',a.factration))asapr,

sum(decode(to_char(a.telfeedate,'mm'),'05',a.factration))a**ay,

sum(decode(to_char(a.telfeedate,'mm'),'06',a.factration))asjue,

sum(decode(to_char(a.telfeedate,'mm'),'07',a.factration))asjul,

sum(decode(to_char(a.telfeedate,'mm'),'08',a.factration))asagu,

sum(decode(to_char(a.telfeedate,'mm'),'09',a.factration))assep,

sum(decode(to_char(a.telfeedate,'mm'),'10',a.factration))asoct,

sum(decode(to_char(a.telfeedate,'mm'),'11',a.factration))asnov,

sum(decode(to_char(a.telfeedate,'mm'),'12',a.factration))asdec

from(selecta.userper,a.tel,a.standfee,b.telfeedate,b.factration

fromtelfeestanda,telfeeb

wherea.tel=b.telfax)a

groupbya.userper,a.tel,a.standfee,to_char(a.telfeedate,'yyyy')

說明:四表聯查問題:

sql:select*fromaleftinnerjoinbona.a=b.brightinnerjoincona.a=c.cinnerjoindona.a=d.dwhere.....

說明:得到表中最小的未使用的id號

sql:

select(casewhenexists(select*fromhandlebwhereb.handleid=1)thenmin(handleid)+1else1end)ashandleid

fromhandle

wherenothandleidin(selecta.handleid-1fromhandlea)共2頁  1 

精妙SQL語句

精妙sql語句 說明 複製表 只複製結構 源表名 a 新錶名 b sql select into b from a where 1 1 說明 複製表 拷貝資料 源表名 a 目標表名 b sql insert into b a,b,c select d,e,f from b sql select a....

精妙Sql語句

1 判斷a 表中有而 b表中沒有的記錄 select a.from tbl1 a left join tbl2 b on a.key b.key where b.key is null 雖然使用 in也可以實現,但是這種方法的效率更高一些 2 新建乙個與某個表相同結構的表 select into b...

精妙SQL語句

1 說明 複製表 只複製結構,源表名 a,新錶名 b sql select into b from a where 1 1 2.說明 拷貝表 拷貝資料,源表名 a,目標表名 b sql insert into b a,b,c select d,e,f from b 3 select a.title,...