首页 > 其他分享 >openGauss WHERE子句

openGauss WHERE子句

时间:2024-04-26 11:27:13浏览次数:16  
标签:customer 3869 name sk 子句 openGauss WHERE hello

WHERE子句

当我们需要根据指定条件从表中查询数据时,就可以在SELECT语句中添加WHERE子句,从而过滤掉我们不需要数据。WHERE子句构成一个行选择表达式,用于获取满足指定条件的数据,如果给定的条件满足,才返回从表中提取到的具体数值。

语法格式

SELECT 
{ * | [column, ...] }
[ FROM from_item [, ...] ]
[ WHERE condition ];

参数说明

  • WHERE子句

    WHERE子句构成一个行选择表达式,用来缩小SELECT查询的范围。在WHERE子句中可以使用比较运算符或逻辑运算符,例如 >, <, =, LIKE, NOT 等等。

  • condition

    condition是返回值为布尔型的任意表达式,任何不满足该条件的行都不会被检索。

示例

使用逻辑运算符读取表customer_t1。

  • AND

    找到c_customer_id为hello且c_customer_sk为3869的行。

    openGauss=# SELECT * FROM customer_t1 WHERE  c_customer_sk = 3869 AND c_customer_id = 'hello';
     c_customer_sk | c_customer_id | c_first_name | c_last_name | amount
    ---------------+---------------+--------------+-------------+--------
              3869 | hello         | Grace        |             |   1000
              3869 | hello         | Grace        |             |   1000
              3869 | hello         |              |             |
              3869 | hello         |              |             |
    (4 rows)
    
  • OR

    找到c_customer_sk大于6985或者c_customer_id为hello的行。

    openGauss=# SELECT * FROM customer_t1 WHERE  c_customer_sk > 6985 OR c_customer_id = 'hello';
    c_customer_sk | c_customer_id | c_first_name | c_last_name | amount
    ---------------+---------------+--------------+-------------+--------
              3869 | hello         | Grace        |             |   1000
              3869 | hello         | Grace        |             |   1000
              3869 | hello         |              |             |
              3869 | hello         |              |             |
              9976 | world         | James        |             |   5000
    (5 rows)
    
  • NOT NULL

    找到customer_t1中c_last_name字段不为空的行。

    openGauss=# SELECT * FROM customer_t1 WHERE  c_last_name IS NOT NULL;
     c_customer_sk | c_customer_id | c_first_name | c_last_name | amount
    ---------------+---------------+--------------+-------------+--------
    (0 rows)
    
  • BETWEEN

    找到c_customer_sk在4000和9000之间的行。

    openGauss=# SELECT * FROM customer_t1 WHERE  c_customer_sk  BETWEEN 4000 AND 9000;
     c_customer_sk | c_customer_id | c_first_name | c_last_name | amount
    ---------------+---------------+--------------+-------------+--------
              6985 | maps          | Joes         |             |   2200
              4421 | Admin         | Local        |             |   3000
    (2 rows)
    

标签:customer,3869,name,sk,子句,openGauss,WHERE,hello
From: https://www.cnblogs.com/renxyz/p/18159600

相关文章

  • openGauss 表达式
    表达式表达式类似一个公式,我们可以将其应用在查询语句中,用来查找数据库中指定条件的结果集。简单表达式逻辑表达式逻辑表达式的操作符和运算规则,详情请参见逻辑操作符。比较表达式常用的比较操作符,请参见操作符。除比较操作符外,还可以使用以下句式结构:BETWEEN操作符......
  • openGauss 查看对象
    查看对象gsql工具提供了若干高级特性,便于用户使用。常见用法如下:查看命令帮助信息\h[NAME]例如,查询ABORT的所有语法。openGauss=#\hABORTCommand:ABORTDescription:abortthecurrenttransactionSyntax:ABORT[WORK|TRANSACTION];切换数据库\cdb......
  • openGauss 触发器
    触发器触发器会在指定的数据库事件发生时自动执行函数。语法格式创建触发器CREATETRIGGERtrigger_name{BEFORE|AFTER|INSTEADOF}{event[OR...]}ONtable_name[FOR[EACH]{ROW|STATEMENT}][WHEN(condition)]EXECUTEPROC......
  • openGauss TRUNCATE-TABLE语句
    TRUNCATETABLE语句清理表数据,TRUNCATETABLE用于删除表的数据,但不删除表结构。也可以用DROPTABLE删除表,但是这个命令会连表的结构一起删除,如果想插入数据,需要重新建立这张表。它和在目标表上进行无条件的DELETE有同样的效果,但由于TRUNCATE不做表扫描,因而快得多。在大表上操作......
  • openGauss UNION子句
    UNION子句UNION计算多个SELECT语句返回行集合的并集。UNION内部的SELECT语句必须拥有相同数量的列,列也必须拥有相似的数据类型。同时,每条SELECT语句中的列的顺序必须相同。语法格式UNION:结果中如果出现相同的值,仅保留一个。SELECTcolumn_name(s)FROMtable_name1UNIONSE......
  • openGauss UPDATE语句
    UPDATE语句修改已经存储在数据库中数据的行为叫做更新。用户可以更新单独一行,所有行或者指定的部分行。还可以独立更新每个字段,而其他字段则不受影响。UPDATE修改满足条件的所有行中指定的字段值,WHERE子句声明条件,SET子句指定的字段会被修改,没有出现的字段则保持它们的原值。语......
  • openGauss SCHEMA
    SCHEMASCHEMA又称作模式。通过管理SCHEMA,允许多个用户使用同一数据库而不相互干扰,可以将数据库对象组织成易于管理的逻辑组,同时便于将第三方应用添加到相应的SCHEMA下而不引起冲突。每个数据库包含一个或多个SCHEMA。数据库中的每个SCHEMA包含表和其他类型的对象。数据库创建初......
  • openGauss SELECT语句
    SELECT语句SELECT语句用于从表或视图中取出数据,结果被存储在一个结果表中,称为结果集。SELECT语句就像叠加在数据库表上的过滤器,利用SQL关键字从数据表中过滤出用户需要的数据。语法格式SELECT{*|[column,...]}[FROMfrom_item[,...]];参数说明SELECT列表指......
  • openGauss JOIN
    JOINJOIN子句用于把来自两个或多个表的行结合起来,基于这些表之间的共同字段。在openGauss中,JOIN有五种连接类型:CROSSJOIN:交叉连接INNERJOIN:内连接LEFTOUTERJOIN:左外连接RIGHTOUTERJOIN:右外连接FULLOUTERJOIN:全外连接以表table1和表table2为例说明不同连接类型,......
  • openGauss NULL值
    NULL值NULL值代表未知数据。无法比较NULL和0,因为它们是不等价的。创建表时,可以指定列可以存放或者不能存放NULL值,详情请参见NOTNULL约束。本节介绍ISNULL和ISNOTNULL操作符。创建表customer_t1,数据如下:openGauss=#SELECT*FROMcustomer_t1;c_customer_sk|c_custome......