select b.* from 表1 a,表2 b
where a.enterpriseid=b.enterpriseid
order by case when a.enterpriseorder =0 then 2147483647 else a.enterpriseorder end)
where a.enterpriseid=b.enterpriseid
order by case when a.enterpriseorder =0 then 2147483647 else a.enterpriseorder end)
order by
(case when A.enterpriseorder =0 then 2147483647 else A.enterpriseorder end)
order by (case when a.enterpriseorder =0 then 2147483647 else a.enterpriseorder end)
where a.enterpriseid=b.enterpriseid
order by case when a.enterpriseorder =0 then 2147483647 else a.enterpriseorder end)
现在有个问题是:
我想把enterpriseorder=0的显示在前面,然后不等于0的按降序排
谢谢
union all
select * from table 1 where enterpriseorder<>0 order by enterpriseorder desc
select b.* from 表1 a,表2 b
where a.enterpriseid=b.enterpriseid
order by case when a.enterpriseorder =0 then 2147483647 else a.enterpriseorder end)
我想:能否通过直接修改orderby后面的东东搞定?
where a.enterpriseid=b.enterpriseid
order by a.enterpriseorder descdrop table #temp
where a.enterpriseid=b.enterpriseid
order by case when a.enterpriseorder=0 then 2147483647 else a.enterpriseorder end desc