8.SQL之运算符

一、算术运算符

算术运算符包括+-*/%,它是以某列为单位执行的。

select product_name,sale_price,sale_price*2 as "sale_price*2" from Product;

在这里插入图片描述
注意:如果该行进行算术运算的那一列的单元格为NULL,则算术运算的结果都为NULL。

NULL/0 #结果为NULL
1 + NULL #结果为NULL

二、比较运算符

运算符 含义
= 等于
< > 或 != 不等于
>= 大于等于
> 大于
<= 小于等于
< 小于

比较运算符一般用于条件判断语句中

select product_name,product_type,sale_price from Product WHERE sale_price >= 1000;

注意:

1.字符串类型的数据原则上按照字典顺序进行排序,不能与数字的大小顺序混淆。

'1-3' < '2' # true
'2010-10-19' > '2010-5-8' # false

2.无法通过比较运算符选中值为NULL的数据

判断一条记录是否为空需要使用 IS NULL 或 IS NOT NULL

select product_name,purchase_price from Product where purchase_price IS NULL;

三、逻辑运算符

运算符 作用
NOT 非,表是相反
AND
OR

1.NOT运算符

NOT不能单独使用,必须和其他查询条件组合起来用

select * from Product where not sale_price >= 1000;
# 等价于 sale_price < 1000

2.AND 和 OR

  • AND表示在其两侧的查询条件都成立时整个查询条件才成了
  • OR表示在其两侧的查询条件有一个成立时整个查询条件就成立
select * from Product where product_type = '办公用品' and (regist_date = '2009-09-11' or regist_date = '2009-09-20');

注:

  • AND运算符的优先级高于OR运算符。想要有限执行OR运算符时必须使用括号

  • 逻辑运算符与NULL运算符之间运算的结果既不是true也不是false,而是第三种结果不确定,所以需要注意

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章