sql between包括两端吗_数据库基础之SQL表达式

【本文详细介绍了数据库的基础知识之SQL常见表达式,欢迎读者朋友们阅读、转发和收藏!】

1 基本概念

一般指由常量、变量、函数和运算符组成的式子为表达式,应特别注意的是单个常量、变量或函数亦可称作表达式。

SQL 语言中包括三种表达式, 第一种是 < 表名 > 后跟的 < 字段名表达式 > ,第二种是 SELECT 语句后的 < 目标表达式 > ,第三种是 WHERE 语句后的 < 条件表达式 > 。

1 .字段名表达式

< 字段名表达式 > 可以是单一的字段名或几个字段的组合,还可以是由字段、作用于字段的集函数和常量的任意算术运算( + 、—、 * , / )组成的运算公式。主要包括数值表达式、字符表达式、逻辑表达式、日期表达式四种。

例如: 1+2 , 1000*1000*1000 等为数值表达式

7829cbc3f50fc2d437d9ac24b4ee543e.png

2 .目标表达式

< 目标表达式 > 有 4 种构成方式:

( 1 ) * ,表示选择相应基表和视图的所有字段。

( 2 ) < 表名 >.* ,表示选择指定的基表和视图的所有字段。

( 3 )集函数(),表示在相应的表中按集函数操作和运算。

( 4 ) [< 表名 >.]< 字段名表达式 >[ , [< 表名 >.]< 字段名表达式 >] …,表示按字段名表达式在多个指定的表中选择。

例如:

Select id,bytes*8/60 from datahouse.tbl_datahouseSelect max(tbl_datahouse.data_addr), min(tbl_datahouse.data_addr), count(tbl_datahouse.data_addr) from datahouse.tbl_datahouse

3 .条件表达式

< 条件表达式 > 常用的有以下六种:

( 1 )比较大小

应用比较运算符构成表达式,主要的比较运算符有: = , > , < , >= , <= , != , <> , !> (不太于), !< (不小于), NOT+ (与比较运算符同用,对条件求非)。

例如: select * from datahouse.tbl_datahouse where id<100

( 2 )指定范围

BETWEEN … AND … , NOT BETWEEN … AND …

查找字段值在(或不在)指定范围内的记录。 BETWEEN 后是范围的下限(即低值), AND 后是范围的上限(即高值)。

例如: select * from datahouse.tbl_datahouse where data_ADDR between 1962999809 and 1962999823

( 3 )集合

IN …, NOT IN …

查找字段值属于(或不属于)指定集合内的记录。

例如: select * from datahouse.tbl_datahouse where data_ADDR IN (1962999810, 1962999818)

( 4 )字符匹配

LIKE , NOT LIKE ’ < 匹配串 > ’ [ESCAPE ’ < 换码字符 > ’ ]

查找指定的字段值与 < 匹配串 > 相匹配的记录。 < 匹配串 > 可以是一个完整的字符串,也可以含有通配符 _ 和 % 。其中 _ 代表任意单个字符; % 代表任意长度的字符串。

例如: select * from datahouse.tbl_datahouse where data_pub_addr like '%117.%'

( 5 )空值

IS NULL , IS NOT NULL

查找字段值为空(或不为空)的记录。 NULL 不能用来表示无形值、缺省值、不可用值,以及取最低值或取最高值。 SQL 规定,在含有运算符 + 、 - 、 * 、 / 的算术表达式中,若有一个值是空值,则该算术表达式的值也是空值;任何一个含有 NULL 比较操作结果的取值都为“假”。

例如: select * from datahouse.tbl_datahouse where data_id is null

( 6 )多重条件

AND , OR

AND 含义为查找字段值满足所有与 AND 相连的查询条件的记录; OR 含义为查找字段值满足查询条件之一的记录。 AND 的优先级高于 OR ,但可通过括号改变优先级。

例如: select * from datahouse.tbl_datahouse where tenantid like '%DataHouse%' and data_pub_addr not like '%180.%'
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值