Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MYSQL CONCAT MAX LÄNGE

Vermutlich verwenden Sie GROUP_CONCAT() , nicht einfach CONCAT() .

Der Standardwert von group_concat_max_len ist 1024, was eine ziemlich kleine Grenze ist, wenn Sie große lange Verkettungen aufbauen.

Um es zu ändern, verwenden Sie diesen Befehl. Ich habe die Länge in diesem Beispiel auf 100.000 gesetzt. Sie können es auf alles einstellen, was Sie brauchen.

 SET SESSION group_concat_max_len = 100000;

Der übliche Wert für max_allowed_packet ist ein Megabyte, was wahrscheinlich mehr ist, als Sie benötigen.

group_concat_max_len selbst hat eine praktisch unbegrenzte Größe . Es ist nur durch die vorzeichenlose Wortlänge der Plattform begrenzt:2^32-1 auf einer 32-Bit-Plattform und 2^64-1 auf einer 64-Bit-Plattform.

Wenn das für Ihre Anwendung immer noch nicht ausreicht, ist es an der Zeit, den Vorschlag von @eggyal anzunehmen und Ihren Ansatz zu überdenken.