基础查询与排序
- SELECT语句基础
- 1. 选择数据
- 2.算数运算符和比较运算符
- 3.逻辑运算符
- 总结
SELECT语句基础
1. 选择数据
SELECT<列名>
FROM<表名>
WHERE<条件表达式>;
WHERE 查询你在你需要的条件下限制的数据
-- 选取product type列为‘衣服’的记录
SELECT product_name, product_type
FROM product
WHERE product_type = '衣服';
-- 选取出符合条件的列(条件列与输出列不同)
SELECT product_name
FROM product
WHERE product_type = '衣服';
-- 想要查询出全部列时
SELECT *
FROM <表名>;
-- SQL语句可以使用AS关键字为列设定别名(用中文时需要双引号(“”))。
SELECT product_id As id,
product_name As name,
purchase_price AS "进货单价"
FROM product;
-- 使用DISTINCT删除product_type列中重复的数据,但是并不会直接删除数据
SELECT DISTINCT product_type
FROM product;
2.算数运算符和比较运算符
含义 | 运算符 |
加 | + |
减 | - |
乘 | * |
除 | ÷ |
-- 选取出sale_price列为500的数据
SELECT product_name, product_type
FROM product
WHERE sale_price = 500;
-- SQL语句中也可以使用运算表达式,AS相当于在运行时先新建了一个表头
SELECT product_name, sale_price, sale_price * 2 AS "sale_price x2"
FROM product;
-- WHERE子句的条件表达式中也可以使用计算表达式
SELECT product_name, sale_price, purchase_price
FROM product
WHERE sale_price-purchase_price >= 500;
/* 对字符串使用不等号
首先创建chars并插入数据
选取出大于‘2’的SELECT语句*/
-- DDL:创建表
CREATE TABLE chars
(chr CHAR(3)NOT NULL,
PRIMARY KEY(chr));
-- 选取出大于'2'的数据的SELECT语句('2'为字符串)
SELECT chr
FROM chars
WHERE chr > '2';
-- 选取NULL的记录
SELECT product_name, purchase_price
FROM product
WHERE purchase_price IS NULL;
-- 选取不为NULL的记录
SELECT product_name, purchase_price
FROM product
WHERE purchase_price IS NOT NULL;
3.逻辑运算符
NOT运算符
-- 选取出销售单价大于等于1000日元的记录
SELECT product_name, product_type, sale_price
FROM product
WHERE sale_price >= 1000;
-- 向代码清单2-30的查询条件中添加NOT运算符
SELECT product_name, product_type, sale_price
FROM product
WHERE NOT sale_price >= 1000;
AND运算符和OR运算符
AND 相当于“并且”,类似数学中的取交集;
OR 相当于“或者”,类似数学中的取并集。
AND 运算符优先于 OR 运算符
AND 运算符两侧的真值都为真时返回真,除此之外都返回假。
OR 运算符两侧的真值只要有一个不为假就返回真,只有当其两侧的真值都为假时才返回假。
NOT运算符只是单纯的将真转换为假,将假转换为真。
当出现NULL值时,则真假不确定,不确定(UNKNOWN)SQL 中的逻辑运算被称为三值逻辑