我找不到這是可能的,是否有任何選項可以限制MySQL函數中的GROUP_CONCAT
?PHP MySQL GROUP_CONCAT限制
例如爲:
GROUP_CONCAT(ColName ORDER BY ColName DESC LIMIT 5)
我不想使用子查詢,因爲這會嚴重拖慢性能。我可以稍後在PHP中對數組進行分片,但我想知道或者MySQL有一個選項可以在MySQL中實現。
我找不到這是可能的,是否有任何選項可以限制MySQL函數中的GROUP_CONCAT
?PHP MySQL GROUP_CONCAT限制
例如爲:
GROUP_CONCAT(ColName ORDER BY ColName DESC LIMIT 5)
我不想使用子查詢,因爲這會嚴重拖慢性能。我可以稍後在PHP中對數組進行分片,但我想知道或者MySQL有一個選項可以在MySQL中實現。
沒有,但你可以這樣做:
SUBSTRING_INDEX(GROUP_CONCAT(ColName ORDER BY ColName DESC), ',', 5)
您可能要注意組CONCAT最大長度(見group_concat_max_len),如果中間字符串可能超過1024個字符大。您可以更改默認值。
*「我不想使用子查詢」* - 您必須稍微使用bonker來將LIMIT應用於子查詢:http://stackoverflow.com/questions/7124418/mysql- subquery-limit – CD001
@ CD001,我知道這個謝謝 –