簡體   English   中英

group_concat沒有顯示mysql的所有值

[英]group_concat does not show all the values mysql

ModelName.all(:having=>"count(receipt_no)>1",:select=>"school_id,group_concat(id SEPARATOR ',') as f_ids,receipt_no,count(distinct id) as id_count,count(receipt_no) as  rec_count",:conditions=>"receipt_no is not null",:group=>"receipt_no")

輸出是

 +------------+-----------+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------+
| receipt_no | school_id | id_count | f_ids                                                                                                                                                                               | rec_count |
+------------+-----------+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------+
| 1261       | 1783      | 2        | 557660,557661                                                                                                                                                                       | 2         |
| 14/15-     | 1783      | 1209     | 68352,77056,113664,56320,68353,77057,113665,56321,68354,56322,68355,81923,173571,113667,56323,68356,94980,56324,68357,56325,68358,80390,56326,68359,80391,110599,56327,80392,885... | 1209      |
| 15-        | 1783      | 112      | 344067,344068,344069,344070,344075,326923,373261,373262,345882,360218,344091,361755,347685,341542,347689,360233,351530,358705,352829,324674,341576,324684,360018,368469,371541,3... | 112       |

這里group_concat不顯示所有值,但項目數與計數收據號相同。 假設f_ids列中的項目超過200個字符,則表示未顯示所有值。 在其他情況下,它將顯示正確的值

我得到了解決方案

SET SESSION group_concat_max_len = 1000000;

在MySQL控制台中運行此代碼,然后此代碼將默認的group_concat字符限制更改為1000000個字符。

如果要在rails控制台中使用,可以按以下方式使用

sql = "SET SESSION group_concat_max_len = 1000000"
ActiveRecord::Base.connection.execute(sql)

請注意:此配置僅適用於該會話

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM