MySQL 聚合函數:List
在 MySQL 中,Oracle 中使用的 LISTAGG() 函數不可用。但是,您可以使用 GROUP_CONCAT() 函數來實現類似的功能。此聚合函數將多行中的值組合成一個字串。
要複製Oracle LISTAGG() 函數的行為,您可以使用GROUP_CONCAT(),如下所示:
SELECT GROUP_CONCAT(MyString SEPARATOR ', ') AS myList FROM table WHERE id < 4;
此查詢將連接Id 列小於4 的所有行的MyString 列中的值,並用逗號分隔它們。結果將是包含以下值的單一字串:
First, Second, Third
您可以選擇按不同的欄位對結果進行分組以建立分層清單。例如,要按父列將結果分組,您可以使用:
SELECT GROUP_CONCAT(MyString SEPARATOR ', ') AS myList FROM table GROUP BY parent_column;
這將為parent_column 中的每個唯一值產生一個字串清單。
以上是如何在 MySQL 中複製 Oracle 的 LISTAGG() 函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!