问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

SQL查询按指定字段排序

发布网友 发布时间:2022-04-25 12:44

我来回答

4个回答

懂视网 时间:2022-04-07 21:40

oracle认为 null 最大。

升序排列,默认情况下,null值排后面。

降序排序,默认情况下,null值排前面。

有几种办法改变这种情况:

(1)用 nvl 函数或decode 函数 将null转换为一特定值

(2)用case语法将null转换为一特定值(oracle9i以后版本支持。和sqlserver类似):
 1.当值为某个值的时候,指定排序的时候的位置
  select * from (
  select 1 t from dual
  union all
  select 2 t  from dual
  union all
  select 3 t from dual
  union all
  select 4 t from dual
  ) a  order by case when a.t=2 then 1 else 0 end
 2.当值为某个值的时候,排序的时候,永远在最后
  select * from (
  select 1 t from dual
  union all
  select 2 t  from dual
  union all
  select 3 t from dual
  union all
  select 4 t from dual
  ) a  order by case when a.t=2 then null else 0 end asc  nulls last

结果:

技术分享

技术分享

(3)使用nulls first 或者nulls last 语法。

这是oracle专门用来null值排序的语法。

nulls first :将null排在最前面。如:select * from mytb order by mycol nulls first

null last :将null排在最后面。如:select * from mytb order by mycol nulls last

如果要想让含有null的列按照自己的意愿进行排序,可做如上处理。

sql查询结果集根据指定条件排序的方法

标签:

热心网友 时间:2022-04-07 18:48

不知道你什么数据库,
假如是
Oracle:
select
count(city_name),
city_name
from
tuan_info
where
source_type
=
1
and
city_name
in("北京","上海","广州")
group
by
city_name
ORDER
BY
INSTR('北京,上海,广州',
city_name);
如果是
SQL
Server

ORDER
BY
CHARINDEX(city_name,
'北京,上海,广州')

热心网友 时间:2022-04-07 20:06

这个需要在排序语句中使用条件判断
例如:表【table_temp】中列【col1】为字符,属性为varchar(10),排序时需要按照b、a、c的顺序显示,则可按照以下sql语句:
select
*
from
table_temp
order by
case
when col1='b' then 1
when col1='a' then 2
when col1='c' then 3
end

热心网友 时间:2022-04-07 21:40

你能不能把具体的问题写出来呢?
一般都会有查询的错误提示
错误代码之类的.
感觉你写的没什么问题呀,不过字段值,应该用单引号,不是双引号的.
select
count(city_name),city_name
from
tuan_info
where
source_type
=
1
and
city_name
in('北京','上海','广州')
group
by
city_name;
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
抖音弹幕怎么关掉?怎么关闭抖音弹幕? 惠普LaserJet P3005D是否支持B5纸的双面打印? word打印出图片总是缺一部分怎么办-word打印图片不完整怎么解决_百度... 理想one哪里产的车辆? 抚州抚州ONE在哪里? one地址在哪里? 如何在图片上写字(如何在图片上添加文字) 网商贷为什么钱没到账 高级经济师职称怎么评 高级经济师需要评审吗 SQL语句如何取前10条,10-30条记录? sqlserver 使用 ROW_NUMBER() OVER(order by xxx)进行分页查询_百度... SQL、MySQL、Oracle随机查询语句? 如何查看sql执行效率 java web项目,怎么将sqlserver的表显示在网页上?附的图片上表格没显示出... SQL中orderby排序有问题,求解决 SQL中排序后从第10个数据开始取5个数据怎么写? SQL SERVER语句提示错误 delete top (5) FROM (SELECT top 100 pe... 带有()子句的select语句可以在表上的一行或多行上放置排他锁_百度知... 如何优化sqlserver order by 谁总结下sqlserver数据库优化知识的详解和具体操作最优方案! MTK到现在都出了哪些手机芯片 RAM芯片组和RAM芯片一样吗 我想从一张SQL Server 表中取出第31行到40行的数据,怎么写t-sql_百度... 关于SQLSERVER2008不能使用offset row fetch next排序的解决方法_百 ... 如何查看手机的芯片组 sqlserver中的分页语句错误,vs提示“offset附近有语法错误,在 FETCH... 手机中常见的芯片组 私募基金经理跳槽公募基金 该不该有3个月的静默期 私募基金的募集期限一般是多久?募集完之后不可以再投吗? sqlserver 支持定位当前页,自定义排序的分页SQL(拒绝动态SQL) order by sql排序问题 微信零钱能赚到别人银行卡吗? 微信佘额怎么转到别人的银行上 如果鞋子被烧黄了,怎么办? 鞋子被火烧破了怎么办? 正月十五不小心烧到了鞋子会怎么样 鞋子被烧了洞 还能补救吗 烧鞋子有什么不好,怎么破? 新鞋子被烟头烧了咋办 纸做的鞋子怎么做 如何去掉鞋子上被烧伤的痕迹 耐克鞋子被烧了个洞新买的咋办咋修他,各位亲们拜请赐教啊 鞋子被火熏黑了要怎么处理? 烧鞋好吗,把自己穿不了的鞋子烧掉好不好? 鞋烧脚怎么办啊? 新买的鞋子,烧脚怎么办? AI用效果功能时图形边缘会变毛糙,怎么解决? ai图片毛边怎么变成光滑的!急~ ai画出来有毛边怎么办?