MariaDB SLEEP() 函数使用指南
在 MariaDB 中,SLEEP() 是一个内置函数,它将当前查询暂停(睡眠)指定的秒数。
MariaDB SLEEP() 语法
这里是 MariaDB SLEEP() 函数的语法:
SLEEP(duration)
参数
duration- 必需的。 以秒为单位的睡眠时长。它应该大于或等于 0,并且可以带有小数部分。
 
如果您提供了错误数量的参数,MariaDB 将报告一个错误: ERROR 1582 (42000): Incorrect parameter count in the call to native function 'SLEEP'。
返回值
MariaDB SLEEP() 函数将查询暂停(睡眠)指定的秒数,然后返回 0。如果暂停被中断,则返回 1。
如果参数 duration 为负数或者 NULL,SLEEP() 函数将不会产生停顿。
MariaDB SLEEP() 示例
基础示例
这个语句展示了 MariaDB SLEEP() 函数的用法:
SELECT
  SYSDATE(),
  SLEEP(5),
  SYSDATE();
输出:
+---------------------+----------+---------------------+
| SYSDATE()           | SLEEP(5) | SYSDATE()           |
+---------------------+----------+---------------------+
| 2023-02-03 15:41:18 |        0 | 2023-02-03 15:41:23 |
+---------------------+----------+---------------------+
1 row in set (5.013 sec)在这个示例中, 我们通过 SLEEP(5) 让查询暂停了 5 秒,因此第二个 SYSDATE() 的输出比第一个的输出晚了 5 秒。
小数秒
MariaDB SLEEP() 函数允许您提供一个带有小数的参数,
SELECT
  SYSDATE(6),
  SLEEP(0.1),
  SYSDATE(6);
输出:
+----------------------------+------------+----------------------------+
| SYSDATE(6)                 | SLEEP(0.1) | SYSDATE(6)                 |
+----------------------------+------------+----------------------------+
| 2023-02-03 15:46:18.142459 |          0 | 2023-02-03 15:46:18.251445 |
+----------------------------+------------+----------------------------+NULL or 负数
如果参数为负数或者 NULL,SLEEP() 函数将不会产生停顿。
SELECT SLEEP(NULL), SLEEP(-1);
输出:
+-------------+-----------+
| SLEEP(NULL) | SLEEP(-1) |
+-------------+-----------+
|           0 |         0 |
+-------------+-----------+
1 row in set (0.000 sec)结论
在 MariaDB 中,SLEEP() 是一个内置函数,它将当前查询暂停(睡眠)指定的秒数。