是否有像 ISNULL() 或 COALESCE() 这样的东西,但不是检查空值而是检查空值。
例如:
SELECT cu.last_name, cu.first_name, cu.email, hu.email FROM
(SELECT DISTINCT c.first_name, c.last_name, c.email, c.household_id, h.head_of_household_id
FROM rd_customers c
JOIN rd_households h ON c.household_id = h.household_id
JOIN ad_registrations r ON r.customer_id = c.customer_id
JOIN ad_meeting_times a ON r.session_id = a.session_id and a.meeting_time_id = 203731) cu
LEFT JOIN rd_customers hu ON hu.customer_id = cu.head_of_household_id
我不想返回四列,而是想得到三列,如果第一列为空,则第三列应该具有 cu.email 或 hu.email 的值! ISNULL 和 COALESCE 在这里不起作用,我不知道为什么
最佳答案
你总是可以使用案例:
select case when cu.email is null or cu.email = '' then hu.email
else cu.email end as ColumnName
from YourTable
关于sql - ISNULL 等效于空字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3720810/