用navicat给mysql里的数据按照数值大小降序排列,怎么 *** 作?

用navicat给mysql里的数据按照数值大小降序排列,怎么 *** 作?,第1张

SELECT Seq,Rs,TotalIndex FROM TABLENAME -- 正常查询

SELECT Seq,Rs,TotalIndex FROM Tablename Order By cast(TotalIndex As Decimal(32,16)) Desc -- 强制将 TotalIndex 字段转换为浮点型(32位长度,16位小数位) Desc 倒序{降序} / Asc 正序{增序}

--特别说明:如果数据量较大,请先按条件筛选出数据结果后,,再最外层Sql语句上去排序,这样的处理方式不会进行全表扫描,示例如下

Select t1.seq,t1.rs,t1.totalindex from (

SELECT Seq,Rs,TotalIndex FROM Tablename where Rs = ?

) t1 Order By cast(t1.totalindex As Decimal(32,16)) Desc

你这样写是错误的,首先你应该再分析下你的需求,你的要求实际上就是先筛选出 tongji>tongji2 的数据,再排序,你那样写是错误的,order后面不能跟表达式

select * from $member where tongji>tongji2 order by tongji desc Limit 0,10


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6102344.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-14
下一篇 2023-03-14

发表评论

登录后才能评论

评论列表(0条)

保存