4
我想了解PostgreSQL generate_subscripts
函數的第二個參數。所述documentation指出的第二個參數是在其下標應產生該陣列的尺寸:第二個參數對generate_subscripts有什麼影響?
generate_subscripts是生成對於給定的數組的指定尺寸的有效下標的集合 一個方便的功能。
但是,對於我的二維示例數組,提供參數1
或2
都會生成相同的輸出。
WITH data AS (
select (array[['1','spam','3'], ['4','eggs','6'], ['7','ham','9']]) AS arr
)
SELECT arr[i][2] AS food
FROM data,
generate_subscripts((SELECT arr FROM data), 1) i;
和
WITH data AS (
select (array[['1','spam','3'], ['4','eggs','6'], ['7','ham','9']]) AS arr
)
SELECT arr[i][2] AS food
FROM data,
generate_subscripts((SELECT arr FROM data), 2) i;
(注1
與2
)都產生相同的輸出:
food
------
spam
eggs
ham
(3 rows)
我怕我不明白的第二個參數generate_subscripts
。有更多經驗的人能澄清這個論點的作用嗎?
我正在運行PostgreSQL 9.1.6。
啊,我明白了!雖然我很困惑,因爲你使用整數作爲你的數組成員。我修改了你的例子和使用過的字符串,這讓我更加清楚:select * from generate_subscripts(array [['''''''''''''''''''''''''''''''香蕉']],2);'。謝謝! – skyler