Mysql 返回以字母(a-z)开头的前3个结果
是否有一个查询将返回以字母a-z开头的前三个结果?我指的不是一个字母的前三个结果,而是按字母顺序排列的所有字母a-z的前三个结果 假设我有一个表,它的名字是:Mysql 返回以字母(a-z)开头的前3个结果,mysql,sql,Mysql,Sql,是否有一个查询将返回以字母a-z开头的前三个结果?我指的不是一个字母的前三个结果,而是按字母顺序排列的所有字母a-z的前三个结果 假设我有一个表,它的名字是: id name 1 Abe 2 Andy 3 Asad 4 Azizi 5 Berta 6 Bulma 7 Caan 8 Carl 9 Cesar 10 Coby 11 Dimitri 我想从以字母开头的前三个查询中得到这个结果 id name 1 Abe 2 Andy 3 A
id name
1 Abe
2 Andy
3 Asad
4 Azizi
5 Berta
6 Bulma
7 Caan
8 Carl
9 Cesar
10 Coby
11 Dimitri
我想从以字母开头的前三个查询中得到这个结果
id name
1 Abe
2 Andy
3 Asad
4 Berta
5 Bulma
6 Caan
7 Carl
8 Cesar
9 Dimitri
您可以使用行号MySQL 8.0+/MariaDB:
SELECT *
FROM (SELECT *, ROW_NUMBER() OVER(PARTITION BY UPPER(LEFT(Name,1))
ORDER BY name) AS rn
FROM tab
) sub
WHERE rn <=3
ORDER BY name;
要回答你提出的问题,是的,这是可能的。但你应该编辑你的问题,展示你的尝试。