Postgres 9文档声明:
38.5.3。使用单行结果执行查询
选择 select_expressions INTO [STRICT]目标FROM ...; ....(详细说明)......然后将target设置为查询返回的第一行.... 第一行之后的任何结果行都将被丢弃。
我的问题是:丢弃的行是否真的是隐含的LIMIT 1
?
因此,LIMIT 1
不会提高SELECT INTO
返回多行的效果,或者会不会?
答案 0 :(得分:1)
SELECT INTO
正好读取一行或两行(使用STRICT
选项)。所以LIMIT
没用。
答案 1 :(得分:0)
据我所知,使用ORDER BY和LIMIT通常可以防止缩短查询,因为它仍然需要在限制之前找到执行订单的所有行。 -Chris Shoemaker