我想根据SQL中的多个where子句选择多个列值。我无法做到。
我正在尝试类似的事情,
select c.fname,r.fname from customer as c LEFT JOIN retailer as r ON
r.customer_id = c.id where c.id > 10 OR r.id < 50.
基本上我希望我的where子句逐个执行并且第一次输出(当执行c.id&gt; 10&#39;时)应该是c.fname和第二个输出(当&#时39;其中r.id&lt; 50&#;;)在一个SQL查询中。
可以吗?请帮忙。
答案 0 :(得分:0)
尝试以下查询:
SELECT
c.fname,
r.fname
CASE WHEN r.id < 50 THEN 'output 1'
WHEN c.id > 10 THEN 'output 2' END AS 'OUTPUT_COLUMN'
FROM customer as c
LEFT JOIN retailer as r
ON r.customer_id = c.id
答案 1 :(得分:0)
我认为你需要一个联盟,而不是一个联盟:
select c.fname, 'customer' as type from customer as c where c.id > 10
union
select r.fname, 'retailer' from retailer as r where r.id < 50
这将在1个查询中为您提供两个表中的列表,彼此独立。