Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.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 从表中同时选择最大n值和最小n值_Mysql_Limit - Fatal编程技术网

Mysql 从表中同时选择最大n值和最小n值

Mysql 从表中同时选择最大n值和最小n值,mysql,limit,Mysql,Limit,在mySQL中,我有一个国家名称和人口数据库,我想返回5个人口最多和5个人口最少的国家。我了解如何按填充对结果进行排序,以及如何将结果限制为列的顶部“n”值或底部“n”值,但无法确定如何使用一个查询同时返回顶部和底部 这两个代码分别是 SELECT Name, population FROM country ORDER BY GNP DESC LIMIT 5; SELECT Name, GNP FROM country ORDER GNP LIMIT 5; 如何将这些代码组合成一个

在mySQL中,我有一个国家名称和人口数据库,我想返回5个人口最多和5个人口最少的国家。我了解如何按填充对结果进行排序,以及如何将结果限制为列的顶部“n”值或底部“n”值,但无法确定如何使用一个查询同时返回顶部和底部

这两个代码分别是

SELECT Name, population FROM country 
ORDER BY GNP DESC LIMIT 5; 

SELECT Name, GNP FROM country 
ORDER GNP LIMIT 5; 

如何将这些代码组合成一个输出


谢谢

您需要
联合所有人

(
  SELECT Name, population FROM country 
  ORDER BY population DESC LIMIT 5
)
UNION ALL
(
  SELECT Name, population FROM country 
  ORDER BY population ASC LIMIT 5
)
ORDER by population DESC;
请参阅简化版。