我加入了三张桌子,并提出了一个观点。在此视图中,我有一个名为AGE
的列。现在,我想在AGE列的旁边创建另一个列,其名称为Age_bin_10yr
,其中显示的年龄已分为10年的分类(eg. “Ge15_Lt25”, “Ge25_Lt35”, “Ge35_Lt45”, “Ge45_Lt55”, “Ge55_Lt65”, “Ge65_Lt75”, “Ge75_Lt85”, etc)
。我不知道该怎么做。我非常感谢你的帮助。非常感谢。
答案 0 :(得分:0)
如果我理解正确,您可以使用case
语句:
select *,
case when age >= 15 and age < 25 then 'Ge15_Lt25'
when age >= 25 and age < 35 then 'Ge25_Lt35'
when age >= 35 and age < 45 then 'Ge35_Lt45'
when age >= 45 and age < 55 then 'Ge45_Lt55'
...
end as Age_bin_10yr
from yourview
答案 1 :(得分:0)
假设age
列的类型为INT
:
SELECT
'Ge'+CAST((age-5)/10 AS VARCHAR)+'5_Lt'+CAST((age-5)/10+1 AS VARCHAR)+'5' AS Age_bin_10yr,
* -- the rest of the columns you need
FROM
... -- the rest of the view definition