Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 返回以字母(a-z)开头的前3个结果_Mysql_Sql - Fatal编程技术网

Mysql 返回以字母(a-z)开头的前3个结果

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

是否有一个查询将返回以字母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   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;

要回答你提出的问题,是的,这是可能的。但你应该编辑你的问题,展示你的尝试。