Maison >base de données >tutoriel mysql >Comment créer efficacement une table de nombres séquentiels dans MySQL ?
Créer un tableau de nombres consécutifs dans MySQL
Cet article explique comment générer efficacement une table de nombres continus dans une base de données MySQL.
Problèmes de syntaxe et d'exécution :
Les erreurs dans l'exemple de code sont principalement dues au manque d'éléments grammaticaux tels que les points-virgules et les virgules. De plus, la sélection répétée de la valeur maximale dans le tableau dans une boucle est inefficace.
Utiliser une alternative au générateur :
Afin de générer efficacement une séquence de nombres, il est recommandé d'utiliser un générateur au lieu d'une boucle. La requête suivante crée une série de vues qui génèrent une séquence de nombres :
<code class="language-sql">CREATE OR REPLACE VIEW generator_16 AS SELECT 0 n UNION ALL SELECT 1 ... UNION ALL SELECT 15; CREATE OR REPLACE VIEW generator_256, generator_4k, generator_64k, generator_1m ...</code>
(Remarque : lors de la création réelle, les instructions SQL de Generator_256, Generator_4k, Generator_64k, Generator_1m et d'autres vues doivent être ajustées si nécessaire pour générer la séquence de numéros correspondante)
Insérez des chiffres dans le tableau :
Insérez des nombres dans la table "nombres" en utilisant la requête suivante :
<code class="language-sql">INSERT INTO numbers(number) SELECT n FROM generator_64k WHERE n <p>此查询从“generator_64k”视图中选择行,并筛选指定范围内的数字。</p><p><strong>实现说明:</strong></p></code>
Grâce à la méthode ci-dessus, vous pouvez efficacement éviter les problèmes de performances causés par les boucles et créer efficacement des tables MySQL contenant des nombres consécutifs. Veuillez ajuster la portée de la vue du générateur en fonction des besoins réels.
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!