SQL說簡單~簡單,但要難也是很…
我先承認我是個很不愛背東西的工程師
每次碰到update,alter,delete語法!
我都要上網查一下
大概就只有select不用背
為了以後還要上網查~我決定我要先寫一下基本語法!
INSERT
INSERT INTO [TABLE NAME]([欄名1],[欄名2], ……) VALUES ( 值1, 值2, ……); DELETEDELETE FROM [TABLE NAME] WHERE 条件; UPDATEUPDATE [TABLE NAME] SET [欄名1]=值1, [欄名2]=值2, …… WHERE 条件; 好了! 為什麼我會特地寫這篇呢~ 也是拖上一篇那批次的福,其實上一篇批次進去後我還必需要去別的TABLE抓資料去UPDATE資料 解說需求: TABLE A --------------------------- | A1 | A2 |
--------------------------- TABLE B
-------------------------------------- | B1 | B2 | B3 |
-------------------------------------- 這幾個只有B3型別是DATE其他都是文字 TABLE B 的PK B1,B2,B3 我的需求: 先在TABLE B 依B1分群抓出最大的日期(B3),再A1=B1 UPDATE A2=B2 如果B1<>A1 不 UPDATE A2 所以整個SQL 變這樣: update A set A.A2 = (select s1.B2 from B s1, (select B.B2 B2, max(B3) B3 from A, B where B.B1= A.A1 group by B.B2) s2 where s1.B1= s2.B2 and s1.B3= s2.B3 and A.A1= s1.B1) where exists (select * from B where A.A1= B.B1)
exists:資料是否存在 好了!下班~大家81
沒有留言:
張貼留言