sql case when then查询语句问题

yufenfei2011 2012-03-15 05:10:56
RT,现有一个cityTable

select *,
case
when Province='江苏省' then '华东'
when Province='浙江省' then '华东'
when CityName='上海市' then '华东'
when Province='河南省' then '华中'
when Province='湖北省' then '华中'
when Province='湖南省' then '华中'
when Province='广西省' then '华南'
when Province='广东省' then '华南'
when Province='河北省' then '华北'
when CityName='北京市' then '华北'
when CityName='天津市' then '华北'
else '其他' end as 'District'
from cityTable

我想做到类似这种查询

select * from
(
select *,
case
when Province='江苏省' then '华东'
when Province='浙江省' then '华东'
when CityName='上海市' then '华东'
when Province='河南省' then '华中'
when Province='湖北省' then '华中'
when Province='湖南省' then '华中'
when Province='广西省' then '华南'
when Province='广东省' then '华南'
when Province='河北省' then '华北'
when CityName='北京市' then '华北'
when CityName='天津市' then '华北'
else '其他' end as 'District'
from cityTable
) where District='华东'

即在已经执行了case后再做查询,查询条件为我case里自定义的District,最后结果应该为
Province District
江苏省 华东
浙江省 华东
...全文
215 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
yufenfei2011 2012-03-15
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 szstephenzhou 的回复:]

之前都可以做的出来 之后的你做不出来??
[/Quote]
我反2了,头晕了........
  • 打赏
  • 举报
回复


select * from ( select *, case when Province='江苏省' then '华东' when Province='浙江省' then '华东' when CityName='上海市' then '华东' when Province='河南省' then '华中' when Province='湖北省' then '华中' when Province='湖南省' then '华中' when Province='广西省' then '华南' when Province='广东省' then '华南' when Province='河北省' then '华北' when CityName='北京市' then '华北' when CityName='天津市' then '华北' else '其他' end as 'District' from cityTable ) as a where District='华东'
勿勿 2012-03-15
  • 打赏
  • 举报
回复
之前都可以做的出来 之后的你做不出来??
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 yufenfei2011 的回复:]

引用 1 楼 travylee 的回复:

引用楼主 yufenfei2011 的回复:
RT,现有一个cityTable
SQL code

select *,
case
when Province='江苏省' then '华东'
when Province='浙江省' then '华东'
when CityName='上海市' then '华东'
when Provi……
[/Quote]

不要上海??
yufenfei2011 2012-03-15
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 jiemo587 的回复:]

SQL code

when CityName='上海市' then '华东'
--后妈生的?
[/Quote]
这个就不必计较了嘛,随便定义的
yufenfei2011 2012-03-15
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 travylee 的回复:]

引用楼主 yufenfei2011 的回复:
RT,现有一个cityTable
SQL code

select *,
case
when Province='江苏省' then '华东'
when Province='浙江省' then '华东'
when CityName='上海市' then '华东'
when Provinc……


有什么疑问?
[/Quote]
下面的那个查询该怎么写
jiemo587 2012-03-15
  • 打赏
  • 举报
回复

when CityName='上海市' then '华东'
--后妈生的?
  • 打赏
  • 举报
回复
[Quote=引用楼主 yufenfei2011 的回复:]
RT,现有一个cityTable
SQL code

select *,
case
when Province='江苏省' then '华东'
when Province='浙江省' then '华东'
when CityName='上海市' then '华东'
when Provinc……
[/Quote]

有什么疑问?

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧