MariaDB ELT() 函数使用指南

在 MariaDB 中,ELT() 是一个内置的字符串函数,它从第二个参数开始查找由第一个参数指定位置的参数并作为字符串返回。

MariaDB ELT() 语法

这里是 MariaDB ELT() 函数的语法:

ELT(pos, str1[, str2, ...])

参数

pos
必需的。一个用于指定位置的数字。
如果您提供了一个浮点数, MariaDB 将自动将其四舍五入为整数。
str1[, str2, ...]
必需的。字符串参数列表。 您应该至少指定一个参数。

如果您不提供参数,或者只提供一个参数, MariaDB 将报告错误: ERROR 1582 (42000): Incorrect parameter count in the call to native function ‘ELT’。

返回值

MariaDB ELT(pos, str1, str2, ...) 返回由 pos 指定位置的参数值。

如果 pos1,则返回 str1;如果 pos2;则返回 str2,以此类推。

如果 pos 小于 1 或者超过参数的数量,则返回 NULL

如果 pos 无法转换为数字, MariaDB ELT() 函数将返回 NULL

MariaDB ELT() 示例

基本示例

下面是一个基本示例:

SELECT
  ELT(1, 'Apple', 'Banana'),
  ELT(2, 'Apple', 'Banana');

输出:

+---------------------------+---------------------------+
| ELT(1, 'Apple', 'Banana') | ELT(2, 'Apple', 'Banana') |
+---------------------------+---------------------------+
| Apple                     | Banana                    |
+---------------------------+---------------------------+

在本例中, ELT(1, 'Apple', 'Banana') 返回了第 1 个字符串参数 AppleELT(2, 'Apple', 'Banana') 返回了第 2 个字符串参数 Banana

位置参数太大或太小

如果第一个参数小于 1 或者超出字符串参数的数量, MariaDB ELT() 函数将返回 NULL。下面的示例说明这一点:

SELECT
  ELT(0, 'Apple', 'Banana') "0",
  ELT(-1, 'Apple', 'Banana') "-1",
  ELT(3, 'Apple', 'Banana') "3";

输出:

+------+------+------+
| 0    | -1   | 3    |
+------+------+------+
| NULL | NULL | NULL |
+------+------+------+

浮点数参数

下面的示例说明了如果第一个参数为浮点数, MariaDB ELT() 函数将浮点数四舍五入为整数:

SELECT
  ELT(1.4, 'Apple', 'Banana'),
  ELT(1.6, 'Apple', 'Banana');

输出:

+-----------------------------+-----------------------------+
| ELT(1.4, 'Apple', 'Banana') | ELT(1.6, 'Apple', 'Banana') |
+-----------------------------+-----------------------------+
| Apple                       | Banana                      |
+-----------------------------+-----------------------------+

结论

MariaDB ELT() 函数第一个参数为数字,其他参数为字符串,它返回由第一个数字参数指定位置的字符串参数。