MYSQL学习4


Product表为:
在这里插入图片描述

算术运算符

SELECT
	product_name,
	sale_price,
	sale_price * 2 AS "sale_price_x2"
FROM
	Product;

结果:
在这里插入图片描述
SQL语句中可以使用的四则运算的主要运算符

含义运算符
+
-
*
/

注:实际上所有包含 NULL 的计算,结果肯定是 NULL。

比较运算符

SELECT
	product_name,
	product_type
FROM
	Product
WHERE
	sale_price = 500;

结果:
在这里插入图片描述比较运算符

运算符含义
=和~相等
<>和~不相等
>=~~~~~
<=~~~~~
>~~~~~
<~~~~~

使用比较运算符对计算结果进行比较

SELECT
	product_name,
	sale_price,
	purchase_price
FROM
	Product
WHERE
	sale_price - purchase_price >= 500;

结果:
在这里插入图片描述

对字符串使用不等号时的注意事项

创建Chars表

CREATE TABLE chars (
	chr CHAR (3) NOT NULL,
	PRIMARY KEY (chr)
)

插入数据

START TRANSACTION;

INSERT INTO Chars
VALUES
	('1');

INSERT INTO Chars
VALUES
	('2');

INSERT INTO Chars
VALUES
	('3');

INSERT INTO Chars
VALUES
	('10');

INSERT INTO Chars
VALUES
	('11');

INSERT INTO Chars
VALUES
	('222');

COMMIT;

选取出大于2的数据的SELECT语句

SELECT
	chr
FROM
	Chars
WHERE
	chr > '2';

查询出:
图片
说明:典型的规则就是按照字典顺序进行比较,也就是像姓名那样,按照条目在字典中出现的顺序来进行
排序。该规则最重要的一点就是,以相同字符开头的单词比不同字符开头的单词更相近

Charschr 列中的数据按照字典顺序进行排序的结果如下所示

1
10
11
2
222
3

以书籍的章节为例

1
1-1
1-2
2
2-1
3

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

不能对NULL使用比较运算符

注意到商品“叉子”和“圆珠笔”的进货单价是 NULL

SELECT
	product_name,
	purchase_price
FROM
	product
WHERE
	purchase_price = 2800;

查询出:
在这里插入图片描述
而选取出进货单价不是2800日元的记录

SELECT
	product_name,
	purchase_price
FROM
	product
WHERE
	purchase_price <> 2800;

查询出:
在这里插入图片描述
执行结果中并没有“叉子”和“圆珠笔”。这两条记录由于进货单价不明(NULL),因此无法判定是不是 2800 日元。
SQL
提供了专门用来判断是否为 NULLIS NULL 运算符

SELECT
	product_name,
	purchase_price
FROM
	product
WHERE
	purchase_price IS NULL;

查询出:
在这里插入图片描述
反之,希望选取不是** NULL** 的记录时,需要使用 IS NOT NULL 运算符

SELECT
	product_name,
	purchase_price
FROM
	product
WHERE
	purchase_price IS NOT NULL;

查询出:
在这里插入图片描述
注:希望选取NULL记录时,需要在条件表达式中使用IS NULL运算符。希望选取不是NULL的记录时,需要在条件表达式中使用IS NOT NULL运算符。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值