是否可以在SQL中使用if / else?假如我有一个supplier带列表:sid->主键,sname然后city。9 E" R- `0 O; Q" D% L: @9 e: X1 J
然后,我希望:' ?! z; l$ C6 i0 n
[ol]select sid from supplier where city="taipei" 如果不是空的。 0 O0 @, \) U% s. C或者 select sid from supplier where city="tainan"[/ol] " _8 P; K4 A9 E解决方案: 3 s+ Z& w1 V% k$ X8 v+ \
是的,你可以。我不知道别的。DBMS,但我已经在了Microsot SQL Server类似的东西在储存过程中使用过;8 L) _( v% i: x6 {8 c
IF EXISTS (SELECT [sid] FROM [supplier] WHERE [city]= "taipei")select sid from supplier where city="taipei" // your true condition queryELSEselect sid from supplier where city="tainan"在MySQL从这个链接来看,这也是可能的。3 d' ^& H- q3 X3 e1 @# k
IF EXISTS(SELECT * FROM tbl_name WHERE category_code ='some-category-code') THEN UPDATE tbl_name SET active='0' WHERE category_code = 'some-category-code' END IF