Maison >base de données >tutoriel mysql >Comment compter les éléments dans une colonne SQL séparée par des virgules ?
Comptage des éléments dans une liste séparée par des virgules avec SQL
Comptage du nombre d'éléments dans une liste séparée par des virgules stockés dans une colonne SQL peut être réalisé en utilisant une technique simple qui combine la manipulation de chaînes et des opérations mathématiques.
La clé de cette approche réside dans la soustraction de la longueur de la chaîne d'origine à partir de la longueur de la même chaîne sans aucune virgule. En supprimant les virgules, la différence de longueur représente le nombre de séparateurs par virgules, qui correspond au nombre d'éléments dans la liste.
Voici un exemple pratique :
SELECT LENGTH(fooCommaDelimColumn) - LENGTH(REPLACE(fooCommaDelimColumn, ',', '')) AS listCount FROM table WHERE>
Dans ce requête, fooCommaDelimColumn est le nom de la colonne contenant la liste séparée par des virgules. En soustrayant la longueur de la liste sans virgules de la longueur d'origine, nous obtenons le nombre d'éléments dans la liste.
Il est important de noter que si la liste séparée par des virgules a une virgule finale (par exemple, chats, chiens, vaches,), le résultat sera un de moins que le nombre réel d'articles. Dans de tels cas, ajouter 1 à l’expression fournirait le décompte correct.
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!