这是代码

SELECT name FROM world
  WHERE population >
     (SELECT population FROM world
      WHERE name='Romania')


我想知道以下部分是否可以缩短。

     (SELECT population FROM world
      WHERE name='Romania')


我是MYSQL的新手。对不起,这样的问题。

谢谢

最佳答案

尽管此查询可能没有什么帮助(因为子查询仅返回单个记录),但使用联接而不是子查询通常更快。

SELECT w1.name
FROM world w1
INNER JOIN world w2 ON w1.population > w2.population
WHERE w2.name = 'Romania'


为了获得合理的性能,您可能希望在名称字段上使用索引,在人口字段上使用另一个索引。

关于mysql - 有没有一种方法可以缩短“大于”运算符(operator)的状况?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40670771/

10-12 23:39