我的sql语句如下
sql="select guest,sum(case sign=1 then 1 else 0 end ) as sign_1,sum(case sign=2 then 1 else 0 end ) from table where guest<>'' group by sign_1 "
我想得到这样的结果。但是数据库告诉我不行,说找不到sign_1字段,但是我实在是无法找到其他的好的办法了!请问有什么好的解决办法?
谢谢
...全文
607打赏收藏
关于group by 的排序的问题
我的sql语句如下 sql="select guest,sum(case sign=1 then 1 else 0 end ) as sign_1,sum(case sign=2 then 1 else 0 end ) from table where guest'' group by sign_1 " 我想得到这样的结果。但是数据库告诉我不行,说找不到sign_1字段,但是我实在是无法找到其他的好的办法了!请问有什么好的解决办法? 谢谢
select * from (select guest,sum(case sign=1 then 1 else 0 end ) [sign_1],sum(case sign=2 then 1 else 0 end ) [sign_2] from [你的表] where guest<>'' group by guest ) tem order by sign_1
select guest,sum(case sign=1 then 1 else 0 end ) as sign_1,sum(case sign=2 then 1 else 0 end ) from table where guest<>'' group by sum(case sign=1 then 1 else 0 end )
sql="select sign_1,sum(sign_2) from (select guest,sum(case sign=1 then 1 else 0 end ) as sign_1,sum(case sign=2 then 1 else 0 end ) sign_2 from table where guest<>'' group by guest ) tem order by sign_1"
sql="select * from (select guest,sum(case sign=1 then 1 else 0 end ) as sign_1,sum(case sign=2 then 1 else 0 end ) from table where guest<>'' group by guest ) tem order by sign_1"