位置:首页 > 软件操作教程 > 数据分析 > MySQL > 问题详情

MySQL——Where 子句指定查询条件

提问人:刘旭39发布时间:2020-10-10

1 比较运算符

  比较运算符 含义

  = 等于

  > 大于

  < 小于

  >= 大于等于

  <= 小于等于

  <> 不等于

  !> 不大于

  !< 不小于

  例:返回96年1月的定单

  Select orderID, CustomerID, orderDate

  FROM orders

  Where orderDate>#1/1/96# AND orderDate<#1/30/96#

  注意:

  Mcirosoft JET SQL 中,日期用'#'定界。日期也可以用Datevalue()函数来代替。

  在比较字符型的数据时,要加上单引号'',尾空格在比较中被忽略。

  例:

  Where orderDate>#96-1-1#

  也可以表示为:

  Where orderDate>Datevalue('1/1/96')

  使用 NOT 表达式求反。

  例:查看96年1月1日以后的定单

  Where Not orderDate<=#1/1/96#

2 范围(BETWEEN 和 NOT BETWEEN)

  BETWEEN …AND…运算符指定了要搜索的一个闭区间。

  例:返回96年1月到96年2月的定单。

  Where orderDate Between #1/1/96# And #2/1/96#

3 列表(IN ,NOT IN)

  IN 运算符用来匹配列表中的任何一个值。IN子句可以代替用OR子句连接的一连串

  的条件。

  例:要找出住在 London、Paris或Berlin的所有客户

  Select CustomerID, CompanyName, ContactName, City

  FROM Customers

  Where City In('London',' Paris',' Berlin')

4 模式匹配(LIKE)

  LIKE运算符检验一个包含字符串数据的字段值是否匹配一指定模式。

  LIKE运算符里使用的通配符

  通配符 含义

  ? 任何一个单一的字符

  * 任意长度的字符

  # 0~9之间的单一数字

  [字符列表] 在字符列表里的任一值

  [!字符列表] 不在字符列表里的任一值

  - 指定字符范围,两边的值分别为其上下限

  例:返回邮政编码在(171)555-0000到(171)555-9999之间的客户

  Select CustomerID ,CompanyName,City,Phone

  FROM Customers

  Where Phone Like '(171)555-####'

  LIKE运算符的一些样式及含义

  样式 含义 不符合

  LIKE 'A*' A后跟任意长度的字符 Bc,c255

  LIKE'5[*]' 5*5 555

  LIKE'5?5' 5与5之间有任意一个字符 55,5wer5

  LIKE'5##5' 5235,5005 5kd5,5346

  LIKE'[a-z]' a-z间的任意一个字符 5,%

  LIKE'[!0-9]' 非0-9间的任意一个字符 0,1

  LIKE'[[]' 1,*


继续查找其他问题的答案?

相关视频回答
回复(0)
返回顶部