MySQL COERCIBILITY() 函数使用指南

MySQL COERCIBILITY() 函数返回指定的参数的排序规则的强制性值。

MySQL 排序规则的强制性指标值指定了两个值比较时采用哪一个谁的规则。MySQL 提供了 7 个排序规则的强制性值,从 0 到 6,值越小优先级越高。

COERCIBILITY 含义
0 显式排序规则 COLLATE 子句的值
1 无排序规则 具有不同排序规则的字符串的拼接
2 隐式排序规则 列值、存储的例程参数或局部变量
3 系统常量 比如 USER(), VERSION() 函数的返回值
4 可强制的 文本字符串
5 数值的 数值或临时值
6 可忽略的 NULL或派生自NULL

COERCIBILITY() 语法

这里是 MySQL COERCIBILITY() 函数的语法:

COERCIBILITY(val)

参数

val
必需的。 值。

返回值

COERCIBILITY() 函数返回指定的参数的排序规则的强制性值。

COERCIBILITY() 示例

下面的示例展示了如何使用 COERCIBILITY() 函数获取指定参数的排序规则强制值。

SET @val = '1';
SELECT
    COERCIBILITY('a' COLLATE utf8mb4_0900_ai_ci),
    COERCIBILITY(@val),
    COERCIBILITY(USER()),
    COERCIBILITY('a'),
    COERCIBILITY(1),
    COERCIBILITY(NULL)\G
*************************** 1. row ***************************
COERCIBILITY('a' COLLATE utf8mb4_0900_ai_ci): 0
                          COERCIBILITY(@val): 2
                        COERCIBILITY(USER()): 3
                           COERCIBILITY('a'): 4
                             COERCIBILITY(1): 5
                          COERCIBILITY(NULL): 6