MariaDB 序列

MariaDB 序列

在10.0.3版本中,MariaDB引入了一种称为序列的存储引擎。它为操作生成一个整数序列,然后终止。序列包含按降序或升序排列的正整数,并使用起始值、结束值和增量值。

它不允许在多个查询中使用,只能在原始查询中使用,因为它是虚拟的(不写入磁盘)。但是,可以通过ALTER命令将序列表转换为标准表。如果删除了转换后的表,序列表仍然存在。序列也无法生成负数或在最小/最大值处循环。

安装序列引擎

使用序列需要安装序列引擎,MariaDB将其作为插件而不是二进制文件进行分发。使用以下命令安装它 −

INSTALL SONAME "ha_sequence";

安装完成后,验证它 −

SHOW ENGINES\G

请记住,在安装引擎后,您不能创建一个使用序列语法的标准表,但是您可以创建一个使用序列语法名称的临时表。

创建序列

有两种方法可以创建序列:

  • 创建一个表并使用AUTO_INCREMENT属性定义一个列作为自增列。

  • 使用现有的数据库并使用SELECT查询来生成一个序列。查询使用seq_[FROM]_to_[TO]seq_[FROM]_to_[TO]_step_STEP语法。

最佳实践是使用第二种方法。请看下面的一个序列创建示例:

SELECT * FROM seq_77_to_99;

序列有许多用途 −

  • 在列中定位缺失的值,以防止在操作中出现相关问题 −
SELECT myseq.seq FROM seq_22_to_28 myseq LEFT JOIN table1 t ON myseq.seq
   = x.y WHERE x.y IS NULL;
  • 构建值的组合 –
SELECT x1.seq, x2.seq FROM seq_5_to_9 x1 JOIN seq_5_to_9 x2 ORDER BY 5, 6;
  • 寻找一个数的倍数 −
SELECT seq FROM seq_3_to_100_step_4;
  • 为像预定系统这样的应用程序构建日期序列。
  • 构建时间序列。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程