可以根据条件返回所有行吗?示例:
SELECT
*
FROM
TABLE
WHERE
USER IN ('A', 'B', 'C')在上面的例子中,只有当有用户A,B和C时,它才会返回。如果用户C不存在,它将只返回2行,A和B。我希望有3行,C是空的。
谢谢。
发布于 2017-02-13 20:32:18
你可以用这个
SELECT
t1.[user],
t.*
FROM
(
SELECT 'A' [user]
UNION ALL
SELECT 'B'
UNION ALL
SELECT 'C'
) t1
LEFT JOIN
table_name t
ON t.[user] = t1.[user];发布于 2017-02-13 20:42:31
您可以在此处利用LEFT join。
WITH cte AS
(SELECT 'a' AS user UNION ALL
SELECT 'b'
SELECT 'c'
)
SELECT * FROM cte
LEFT JOIN tablename ON yourcolumnName = userhttps://stackoverflow.com/questions/42203947
复制相似问题