Maison > base de données > tutoriel mysql > le corps du texte

Comment modifier la limite de longueur de la fonction group_conca dans MySQL

不言
Libérer: 2018-08-22 09:53:22
original
2195 Les gens l'ont consulté

Le contenu de cet article explique comment modifier la limite de longueur de la fonction group_conca dans MySQL. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

Dans MySQL, il existe une fonction appelée "group_concat". Vous ne trouverez peut-être pas le problème en utilisation normale. Lors du traitement du Big Data, vous constaterez que le contenu a été intercepté. en fait, MYSQL a un contrôle interne sur cela. La longueur non définie par défaut est de 1024. Si nous avons besoin qu'elle soit plus grande, nous devons la modifier manuellement

Les détails sont les suivants :

Après avoir utilisé group_concat, si vous l'utilisez dans la limite de sélection, cela n'a aucun effet

Lorsque vous utilisez group_concat pour connecter des champs, il y a une limite de longueur, pas le nombre de champs connectés. Mais vous pouvez le configurer.

À l'aide de la variable système group_concat_max_len, vous pouvez définir la longueur maximale autorisée.

Le séparateur par défaut du système est la virgule

Méthode de modification :


SET [SESSION | GLOBAL] group_concat_max_len = 10240
Copier après la connexion
Les paramètres pouvant être modifiés sont les suivants

GROUP_CONCAT modifie la valeur de un certain champ par Les caractères spécifiés sont accumulés. Le séparateur par défaut du système est la virgule et la longueur des caractères pouvant être accumulés est de 1024 octets.

1. Prenons d'abord un exemple simple


select group_concat(f_a) from t_one group by f_b;
Copier après la connexion
Effectuez une requête de groupe par f_b et accumulez f_a dans chaque groupe.


2. Modifier le séparateur par défaut


select group_concat(f_a  separator  '_') from t_one group by f_b;
Copier après la connexion
séparateur est un mot clé, suivi du caractère à séparer


3. Trier


select group_concat(f_a order by f_a  separator  '_') from t_one group by f_b;
Copier après la connexion
4. Modifier la taille des caractères par défaut

1) Ajouter

 group_concat_max_len = 102400 #你要的最大长度
Copier après la connexion
au fichier de configuration MySQL 2) Cela peut être plus simple, exécutez l'instruction, vous pouvez définir la portée

 SET GLOBAL group_concat_max_len=102400;
 SET SESSION group_concat_max_len=102400;
Copier après la connexion
5. Utiliser avec concat

group_concat renvoie un gros objet BLOB par défaut Vous pouvez utiliser concat pour renvoyer une chaîne, et vous pouvez également ajouter du contenu. dans le contenu renvoyé. Ajoutez d’autres données.

Recommandations associées :

Utilisation de count() dans les grandes tables mysql et optimisation de count() dans mysql

Illimité dans mysql Implémentation de code extrêmement classifié

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!