【GBase 8a MPP数据库集群】expr IN (value,...)

函数说明

如果 expr 是 IN 列表中的任一值,它将返回 1,否则返回 0。如果所有的值均是常量,那么所有的值被按照 expr 的类型进行计算和排序。

示例

  • 示例 1: expr 不是 IN 列表中的任一值。
gbase> SELECT 2 IN (0,3,5,'8') FROM t;
+------------------+
| 2 IN (0,3,5,'8') |
+------------------+
| 0 |
+------------------+
1 row in set
  • 示例 2: expr 是 IN 列表中的值。
gbase> SELECT '1' IN (0,3,5,'1') FROM t;
+--------------------+
| '1' IN (0,3,5,'1') |
+--------------------+
| 1 |
+--------------------+
1 row in set

如果左边的表达式是 NULL,或者在列表中没有发现相匹配的值并且列表中
的一个表达式是 NULL, IN 均返回 NULL。
IN()语法也可以用于子查询类型。

  • 示例 3: expr 的值为 NULL。
gbase> SELECT NULL IN (0,3,5,'wefwf') FROM t;
+-------------------------+
| NULL IN (0,3,5,'wefwf') |
+-------------------------+
| NULL |
+-------------------------+
1 row in set
  • 示例 4:子查询中包含 IN()函数。
    示例中用到的表及数据:
CREATE TABLE sc (sno VARCHAR(4), grade INT);
INSERT INTO sc VALUES ('101',82),('102',59),('103',90),('104',88),('106',82);

查询所有课程都及格的同学的学号。

gbase> SELECT sno FROM sc WHERE grade IN (SELECT grade FROM sc WHERE grade>60) GROUP
BY sno;
+------+
| sno |
+------+
| 103 |
| 101 |
| 104 |
| 106 |
+------+
4 rows in set
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值