请问MySQL里怎么按某列进行分组显示呀

请问MySQL里怎么按某列进行分组显示呀,第1张

排序无非是依据数字值和字符值。数字列类型很容易理解。字符类型就有很多。比如依据转换后的ASIIK码,汉字有首拼,笔画数,等等

SELECT username FROM `cmstop_member` WHERE username LIKE "bi%" ORDER BY CASE username WHEN username LIKE "bi%" THEN 1 ELSE 0 END

这个应该可以达到你的要求。匹配输入的结果再前显示。但是没有对,去除输入符之后的字符串排序

使用分析函数row_number() over (partiion by ... order by ...)来进行分组编号,然后取分组标号值为1的记录即可。目前主流的数据库都有支持分析函数,很好用。其中,partition by 是指定按哪些字段进行分组,这些字段值相同的记录将在一起编号;order by则是指定在同一组中进行编号时是按照怎样的顺序。


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存