Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Tạo bảng số trong MySQL

Bạn đang thiếu dấu chấm phẩy, dấu phẩy và thậm chí sau khi sửa cú pháp, bạn vẫn không nên chọn max từ bảng mỗi lần chỉ để chèn thêm một hàng trong vòng lặp.

Bỏ điều đó và sử dụng trình tạo từ 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;

Và nếu vì lý do nào đó bạn thực sự cần một bảng số chỉ cần làm:

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. MySQL Chọn N hàng đầu

  2. Trong MySQL, tôi có thể sao chép một hàng để chèn vào cùng một bảng không?

  3. Đánh giá về các chức năng của cửa sổ phân tích mới trong MySQL 8.0

  4. PHP, MySQL và Múi giờ

  5. Cách tìm hiệu quả các vị trí gần nhất gần một vị trí nhất định