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

Последователност от числа в MySQL

Тъй като няма такова нещо като xrange, може да се използва отделна таблица, съхранена с цяло число (както беше отговорено по-рано), или просто да се направи съхранена процедура, за да се свърши работата:

DROP PROCEDURE IF EXISTS xrange;
DELIMITER //
CREATE PROCEDURE xrange(x INT, y INT)
BEGIN
  DECLARE i INT DEFAULT x;
  CREATE TEMPORARY TABLE xrange_tmp (c1 INT);
  WHILE i < y DO
    INSERT INTO xrange_tmp VALUES (i);
    SET i = i + 1;
  END WHILE;
END;
//

Употреба:

CALL xrange(-2,10);
SELECT c1 FROM xrange_tmp;
DROP TABLE xrange_tmp;

Горното очевидно ще бъде по-бавно от създаването на готова таблица с цели числа. Въпреки това е по-гъвкав.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Pymysql Insert Into не работи

  2. Fluent Nhibernate:Не може да се създаде връзка с база данни с MySQL

  3. Възможно ли е в MySQL да има индекс, базиран на функции?

  4. Как да избягвам специални символи в MySQL?

  5. PHP Laravel:Не може да се осъществи връзка, защото целевата машина активно я отказа