我必须创建一个新表,里面应该是我从CASE语句中获得的列。我不需要select语句产生的其余列
例如:
CREATE TABLE test
AS (
SELECT a.id, ...
CASE WHEN a.id = 1 THEN 2
ELSE 0
END as LegalType
FROM table a, ...
WHERE ...);
现在我的问题是如何从CASE语句中仅选择LegalType列?我不想要列a.id
答案 0 :(得分:0)
您可以选择INTO
SELECT CASE WHEN a.id = 1 THEN 2 ELSE 0 END as LegalType
....
INTO test
FROM table a
WHERE 1=1);
这将根据SELECT中返回的数据创建一个表。见https://msdn.microsoft.com/en-GB/library/ms188029.aspx