Redshift查询忽略LIMIT子句

时间:2016-10-28 20:34:56

标签: amazon-redshift

在调查重复的event_id时,我们注意到Redshift似乎忽略了一个简单查询的LIMIT子句:

SELECT se_action
FROM events
WHERE event_id = 'e4a5ffbe-6a1d-47b7-ac10-6c57b2cd65ed'
ORDER BY collector_tstamp DESC
LIMIT 1;

运行此查询时,我收到800多个结果。有趣的是,如果我删除ORDER BY子句,我只会收到一个预期的结果。

如何正确输出单个结果,或者听起来像是Redshift的错误?

2 个答案:

答案 0 :(得分:0)

我能想到的两种方法会限制从采石场获得的结果数量,它们是LIMITTOP

试试这个TOP示例

SELECT TOP 1 se_action
FROM events
WHERE event_id = 'e4a5ffbe-6a1d-47b7-ac10-6c57b2cd65ed'
ORDER BY collector_tstamp DESC;

答案 1 :(得分:0)

这听起来像Redshift中的错误。如果您使用LIMIT 1(或TOP 1),则查询应仅返回一行。

如果您订阅了AWS Support,请打开一个问题,以便他们可以跟踪潜在的问题。如果您未订阅支持,则可以发布到Amazon Redshift discussion forum