这适用于SQL Server 2008 R2。
我有一个表PEOPLE
,其中包含NAME
列和AGE
列。我使用SQL作业导入到具有相同列LEADS
和NAME
的另一个表AGE
,并使用其他列AGEGROUP
我想要的
那个SQL语句怎么样?
感谢。
答案 0 :(得分:2)
这个插入符合你想要的(你的逻辑会遗漏任何20岁的人,所以我把它们放在A组中)
INSERT INTO LEADS (NAME, AGE, AGEGROUP)
SELECT
NAME
, AGE
, CASE
WHEN AGE <= 20 THEN 'A'
WHEN AGE > 20 AND AGE < 40 THEN 'B'
WHEN AGE >= 40 AND AGE < 60 THEN 'C'
WHEN AGE >= 60 THEN 'D'
END AS AGEGROUP
FROM PEOPLE
答案 1 :(得分:2)
INSERT INTO LEADS (Name , Age , AgeGroup)
SELECT Name
,Age
,CASE WHEN Age <= 20 THEN 'A'
WHEN Age > 20 AND Ages < 40 THEN 'B'
WHEN Age >= 40 AND Ages < 60 THEN 'C'
WHEN Age >=60 THEN 'D'
END
FROM People