我在我的SQL查詢中嗅探出圍繞ARRAY_AGG
函數運行的錯誤。以下是以下兩行SQL。這兩個類似的SQL ARRAY_TO_STRING語句有什麼區別?
以下代碼行是我最終希望擁有的正確且完整的SQL版本。此行爲是導致正確查詢的行爲。
ARRAY_TO_STRING((ARRAY_AGG(R.version ORDER BY R.released_on DESC))[1:10], ', ')
,在這裏這條線我認爲將是等效的,但是當我執行這一行的SQL我收到ERROR: more than one row returned by a subquery used as an expression
ARRAY_TO_STRING(ARRAY_AGG((SELECT "releases"."version" FROM "releases" ORDER BY "releases"."released_on" DESC LIMIT 10)), ',')
我到達通過AREL此行SQL,並證明是一個有點具有挑戰性,但是這兩條線可能相當嗎?第一行是切片數組以檢索10個項目,而第二個基本上是做同樣的事情,儘管在行中。這是否可以調整或將這需要重寫?