Mysql
 sql >> база данни >  >> RDS >> Mysql

Създаване на таблица с числа в MySQL

Липсват ви точки и запетаи и дори след коригиране на синтаксиса все още не е добра идея всеки път да избирате максимум от таблицата, само за да вмъкнете още един ред в цикъл.

Зарежете това и използвайте генератори от http:/ /use-the-index-luke.com/blog/2011-07-30/mysql-row-generator :

CREATE OR REPLACE VIEW generator_16
AS SELECT 0 n UNION ALL SELECT 1  UNION ALL SELECT 2  UNION ALL 
   SELECT 3   UNION ALL SELECT 4  UNION ALL SELECT 5  UNION ALL
   SELECT 6   UNION ALL SELECT 7  UNION ALL SELECT 8  UNION ALL
   SELECT 9   UNION ALL SELECT 10 UNION ALL SELECT 11 UNION ALL
   SELECT 12  UNION ALL SELECT 13 UNION ALL SELECT 14 UNION ALL 
   SELECT 15;

CREATE OR REPLACE VIEW generator_256
AS SELECT ( ( hi.n << 4 ) | lo.n ) AS n
     FROM generator_16 lo, generator_16 hi;

CREATE OR REPLACE VIEW generator_4k
AS SELECT ( ( hi.n << 8 ) | lo.n ) AS n
     FROM generator_256 lo, generator_16 hi;

CREATE OR REPLACE VIEW generator_64k
AS SELECT ( ( hi.n << 8 ) | lo.n ) AS n
     FROM generator_256 lo, generator_256 hi;

CREATE OR REPLACE VIEW generator_1m
AS SELECT ( ( hi.n << 16 ) | lo.n ) AS n
     FROM generator_64k lo, generator_16 hi;

И ако по някаква причина наистина имате нужда от таблица с числа, просто направете:

INSERT INTO numbers(number)
SELECT n FROM generator_64k WHERE n < 64000


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как работи операторът SOUNDS LIKE в MySQL

  2. Грешка в MySQL/Writing File (Errcode 28)

  3. Използвайте обвързан параметър няколко пъти

  4. Настройте база данни и създайте потребител само за четене в AWS Redshift и Mysql

  5. mysql грешка 1364 Полето няма стойности по подразбиране