条件选择的SQL语法

sch*_*har 1 sql sql-server

我试图从三个表中选择数据.我的逻辑应该是这样的:

基本上从两个表中的任何一个表中选择,这两个表由表A中的列确定.

Select a.orderid , 
if (a.ordertable= b) then b.order_info
else 
 c.order_info 
where 
a.order_id = b.order_id or a.order_id = c.order_id
Run Code Online (Sandbox Code Playgroud)

有什么指针吗?

Ker*_*mit 5

使用 CASE

SELECT a.orderid,
    CASE
        WHEN a.ordertable = b.? THEN b.order_info
        ELSE c.order_info
    END
FROM sparkles
WHERE a.order_id = b.order_id OR a.order_id = c.order_id
Run Code Online (Sandbox Code Playgroud)

  • @GordonLinoff他也没有.但我会更新.谢谢 :) (2认同)