我尝试了解外连接,我有一个问题。
假设在此查询之后所有列都不为空:
SELECT a.service_type_id, b.customer_member_id, a.service_name
FROM CUSTOMER_SERVICE_TYPE a,
MEMBER_CUSTOMER_SERVICES b
WHERE a.service_type_id = b.service_type_id;
是否可以在其中一列中获取空字段?
答案 0 :(得分:2)
首先,您问题的标题是“外部联接”,但您的查询是内部联接。
其次,使用古老的语法,查询格式不正确。它应该是:
SELECT cs.service_type_id, mcs.customer_member_id, cs.service_name
FROM CUSTOMER_SERVICE_TYPE cs JOIN
MEMBER_CUSTOMER_SERVICES mcs
ON cs.service_type_id = mcs.service_type_id;
第三,你的问题的答案是“不”。如果查询中的所有源列都不是NULL
,则所有列都不能为NULL
。如果它真的是OUTER JOIN
,则列可以是NULL
。
注意:
JOIN
语法。 从不在FROM
子句中使用逗号。