下面的以下sql片段是父sql的子选择。
有没有办法说,“如果客户不存在,我想运行不同的sql”?
select orderdate,
(select contactname from customers where customerID = 'ALFKI' or select 'No Customer') as contactname
from orders
我知道这可以通过加入来解决,但主要是对这种可能性感兴趣吗?
答案 0 :(得分:1)
例如
IF NOT EXISTS (select * from customers where customerID = 'ALFKI')
BEGIN
SELECT '1'
END
ELSE
BEGIN
SELECT '2'
END
答案 1 :(得分:1)
请忽略这个问题。我应该一直疲惫地问,因为这个问题听起来甚至让我感到困惑。
当答案在其他地方时,原来我错了。答案是用优先括号解决的。对不起,感到困惑。
杆。
答案 2 :(得分:0)
你在这里尝试做的事情叫做LEFT JOIN和ISNULL:
select OrderDate, isnull(c.FullName, 'No customer') CustomerName
from Orders o
left join Customers c on o.CustomerId = c.CustomerId