mysql中的“in”什么意思

MySQL 中的 IN 运算符用来判断表达式的值是否位于给出的列表中;如果是,返回值为 1,否则返回值为 0。

IN的语法格式如下:

expr IN ( value1, value2, value3 ... valueN )

expr 表示要判断的表达式,value1, value2, value3 ... valueN 表示列表中的值。MySQL 会将 expr 的值和列表中的值逐一对比。

示例:

mysql> SELECT 2 IN (1,3,5,'thks'),'thks' IN (1,3,5, 'thks');

+---------------------+---------------------------+

| 2 IN (1,3,5,'thks') | 'thks' IN (1,3,5, 'thks') |

+---------------------+---------------------------+

|                   0 |                         1 |

+---------------------+---------------------------+

1 row in set, 2 warnings (0.00 sec)

对空值 NULL 的处理

当 IN 运算符的两侧有一个为空值 NULL 时,如果找不到匹配项,则返回值为 NULL;如果找到了匹配项,则返回值为 1。

mysql> SELECT NULL IN (1,3,5,'thks'),10 IN (1,3,NULL,'thks');

+------------------------+-------------------------+

| NULL IN (1,3,5,'thks') | 10 IN (1,3,NULL,'thks') |

+------------------------+-------------------------+

|                   NULL |                    NULL |

+------------------------+-------------------------+

1 row in set, 1 warning (0.00 sec)

mysql>  SELECT NULL IN (1,3,5,'thks'),10 IN (1,10,NULL,'thks');

+------------------------+--------------------------+

| NULL IN (1,3,5,'thks') | 10 IN (1,10,NULL,'thks') |

+------------------------+--------------------------+

|                   NULL |                        1 |

+------------------------+--------------------------+

1 row in set (0.00 sec)

推荐:MySQL教程

以上是 mysql中的“in”什么意思 的全部内容, 来源链接: utcz.com/z/538796.html

回到顶部