【发布时间】:2020-01-29 11:05:17
【问题描述】:
有一个名为 stat 的 MySQL 表:
line_name device_name count
1001 3548001 2
1002 3548002 3
1003 3548003 6
2001 3548004 7
2002 3548005 3
2003 3548006 4
3001 3548007 3
3002 3548008 9
3003 3548009 7
我需要选择line_name 中第一个字符不同的两条记录
例如:
1001 3548001 2
3003 3548009 7
或:
2002 3548005 3
3001 3548007 3
我试过了:
SELECT DISTINCT(SUBSTRING(line_name,1,LENGTH(line_name)-3)) as pack_id, device_name, count
from stat
order by rand()
limit 2;
但有时我会在结果集中得到相同的pack_id
【问题讨论】:
-
另外,很明显这个查询不能返回那个结果!
-
草莓,是的,你说得对。我编辑了我的问题
-
distinct 不是函数,它适用于整行。
-
请提供
SHOW CREATE TABLE。我想知道的一件事是line_name是否“独一无二”。
标签: mysql sql mariadb groupwise-maximum