概念:
查询:
数据准备:
create table product(
pid int primary key auto_increment,
p_name varchar(10) not null,
price double,
category varchar(10)
);
insert into product values(null,'海尔洗衣机',5000,'c001'),
(null,'美的冰箱',3000,'c001'),
(null,'格力空调',5000,'c001'),
(null,'九阳电饭煲',200,'c001'),
(null,'啄木鸟衬衣',300,'c002'),
(null,'恒源祥西裤',800,'c002'),
(null,'花花公子夹克',440,'c002'),
(null,'劲霸休闲裤',266,'c002'),
(null,'海澜之家卫衣',180,'c002'),
(null,'杰克琼斯运动裤',430,'c002'),
(null,'兰蔻面霜',300,'c003'),
(null,'雅诗兰黛精华水',200,'c003'),
(null,'香奈儿香水',350,'c003'),
(null,'SK-II神仙水',350,'c003'),
(null,'资生堂粉底液',180,'c003'),
(null,'老北京方便面',56,'c004'),
(null,'良品铺子海带丝',17,'c004'),
(null,'三只松鼠坚果',88,null);
全部数据效果图:
简单查询:
-- 1.查询所有的商品.
select * from product;
-- 2.查询商品名和商品价格.
select p_name,price from product;
-- 3.别名查询.使用的关键字是as(as可以省略的).
-- 3.1表别名:
select * from product as p;
select * from product p;
select p.pid,u.id from product p, user u; -- 适用于多表查询,通过使用别名让 SQL 更简短)
-- 3.2列别名:基本上,创建别名是为了让列名称的可读性更强。
select p_name as '商品名', price as '价格' from product;
-- 3.3 合并列
select p_name, concat(price,', ',category) as info from product;
-- 4.去掉重复值
select distinct price from product;
-- 5.查询结果是表达式(运算查询):将所有商品的价格+10元进行显示.
select p.p_name '名称', p.price +10 new_price from product p;
注意事项:
- 在查询中涉及超过一个表
- 在查询中使用了函数
- 列名称很长或者可读性差
- 需要把两个列或者多个列结合在一起
- 别名只是暂时使用的,仅在当条语句查询的时候别名可以生效,到下条语句别名就没作用了