Diviser les valeurs séparées par des virgules avec les expressions de table communes de SQLite
Question :
Comment peut-on J'ai divisé sans effort une chaîne séparée par des virgules dans la colonne Catégorie d'une table SQLite ? Je recherche une approche plus simple que d'utiliser Replace() et Trim() et évite les limitations de substr().
Réponse :
SQLite propose une fonctionnalité appelée Common Table Expressions (CTE) qui permettent des requêtes récursives, ce qui facilite le fractionnement des valeurs séparées par des virgules. Voici une répartition :
Requête :
WITH split(word, csv) AS ( SELECT '', 'Auto,A,1234444'||',' UNION ALL SELECT substr(csv, 0, instr(csv, ',')), substr(csv, instr(csv, ',') + 1) FROM split WHERE csv != '' ) SELECT word FROM split WHERE word!='';
Explication :
Sortie :
Auto A 1234444
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!