是否可以在 t-sql 查询的 FROM 子句中使用 CASE?例如:
SELECT *
FROM CASE
WHEN column_ = 'firstColumn'
THEN table_ t, firstTable fT
ELSE table_ t, secondTable sT
是否可以在 t-sql 查询的 FROM 子句中使用 CASE?例如:
SELECT *
FROM CASE
WHEN column_ = 'firstColumn'
THEN table_ t, firstTable fT
ELSE table_ t, secondTable sT
SELECT *
FROM mytable t
CROSS APPLY
(
SELECT *
FROM firstTable ft
WHERE t.column = 'firstColumn'
AND ft.id = t.joincolumn
UNION ALL
SELECT *
FROM secondTable st
WHERE (t.column <> 'firstColumn' OR t.column IS NULL)
AND st.id = t.joincolumn
) q
谢谢各位的意见。我实际上结束了类似于 Quassnoi 建议的事情:
SELECT *
FROM table_ t, firstTable fT
UNION
SELECT *
FROM table_ t, secondTable sT
我不知道我在想什么。我应该早点想出来的。