作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一组记录,看起来像以下名义结果。计数列中的数字多次出现重复。 “count”来自 char_length(text_column)。我想获取每个此类分组中的第一条记录。我该怎么做呢?
我查看了 char_length() 文档并搜索了完成此操作的示例,但找不到任何内容。
select distinct(char_length(text_column)), text_column from table
...与我能够得到的结果一样接近(显然不是很接近)。
=======+============================
count + text_column
=======+============================
2139 + some text entry
-------+----------------------------
3000 + another sentence here
-------+----------------------------
3000 + more text in this sentence
-------+----------------------------
3000 + still more text here
-------+----------------------------
谢谢你,带宽
最佳答案
除非列指定了顺序,否则不存在“第一”之类的东西。但是,您可以使用 group by
从不确定行获取值。 :
select char_length(text_column), text_column
from table
group by char_length(text_column);
我不太喜欢使用 group by
的 MySQL 扩展哪里text_column
select
中允许,但不是group by
。但是,由于它是一个长列,因此让 MySQL 选择值而不是使用实际的聚合函数(例如 min()
或 max()
)可能会更有效。
关于MySQL:选择一组不同(char_length(text_column))记录中的顶部结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31280347/
我有一组记录,看起来像以下名义结果。计数列中的数字多次出现重复。 “count”来自 char_length(text_column)。我想获取每个此类分组中的第一条记录。我该怎么做呢? 我查看了 c
我是一名优秀的程序员,十分优秀!