2016-10-28 2 views
0

중복 EVENT_ID 년대를 조사하는 동안, 우리는 Redshift에 간단한 쿼리에 LIMIT 절을 무시하는 것 같다 것으로 나타났습니다 :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 절을 제거하면 의도 한대로 하나의 결과 만받습니다.

어떻게 하나의 결과를 제대로 출력 할 수 있습니까? 아니면이 소리가 적색 변속기의 버그처럼 들립니까?

+0

흥미롭게도,'EXPLAIN'을 실행하면 XN 한도가 다른 쿼리와 관련된 계획에 없습니다. – Chris

+0

그들은 당신이 SQL을 작동하도록 설정하는 방법이 있지만 제한된 양을 변경하고 'OFFSET'을 추가하여 작동하는지 항상 확인함으로써 테스트 할 수 있습니다. 이상한 것은 'EXPLAIN'으로 나타나지 않았습니다. –

답변

0

이 당신이 채석장에서 얻는 결과의 양을 제한합니다 내가 그 생각을 할 수있는 두 가지 방법이 있습니다 그리고 그들은이 TOP

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

이이 같은 소리 않습니다 시도 LIMITTOP

있습니다 Redshift의 버그. LIMIT 1 (또는 TOP 1)을 사용하면 쿼리는 한 행만 반환해야합니다.

AWS 지원에 가입 한 경우 근본적인 문제를 추적 할 수 있도록 문제를 엽니 다. 지원을 신청하지 않은 경우 Amazon Redshift discussion forum에 게시 할 수 있습니다.