MySQL基本查询

1、先准备一张表

mysql> CREATE TABLE tb_1
(
id int(11) not null unique primary key auto_increment,
name varchar(25) not null unique,
price float(2)
);
 
Query OK, 0 rows affected (0.01 sec)

2、往tb_1 表插入数据,演示查询

mysql> insert into tb_1
    -> (id, name, price)
    -> values
    -> (1, 'apple', 2.3),
    -> (2, 'watermelon', 5.6),
    -> (3, 'banana', 3.5),
    -> (4, 'orange', 6.7),
    -> (5, 'cucumber', 1.2),
    -> (6, 'tomatoes', 6.6);
Query OK, 6 rows affected (0.01 sec)
3、单表查询 查询所有字段列

mysql> select * from tb_1;

4、单表查询 查询指定某个字段

mysql> select name from tb_1;

5、单表查询 指定多个字段查询

mysql> select name, price from tb_1;

6、查询 apple多少钱

mysql> select name, price
    -> from tb_1
    -> where name = 'apple';

7、创建个 tb_2 表

插入数据

查询价格等于 8 块的水果

mysql> select name, price 
    -> from tb_2
    -> where price = 8;

7、查询价格小于 6 块的水果

mysql> select name, price 
    -> from tb_2
    -> where price < 6;

8、 带 IN 关键字的查询

IN 操作符用来指定满足条件范围内的记录,符合条件就匹配出来,否则就不显示

mysql> select name, price
    -> from tb_2
    -> where price IN(5, 8);

9、 使用 NOT IN(x, y) 关键字查询条件满足的不显示,条件以外的显示

mysql> select name, price
    -> from tb_2
    -> where price NOT IN(5,8);

10、 带 BETWEEN AND 关键字查询范围内的记录

mysql> select name, price
    -> from tb_2
    -> where price BETWEEN 3 AND 6;

11、 使用 NOT BETWEEN 查询满足条件以外的会被查询出来

mysql> select name, price
    -> from tb_2
    -> where price NOT BETWEEN 3 AND 6;

12、 使用 LIKE 关键字匹配查询

mysql> select name, price
    -> from tb_2
    -> where name LIKE('a%');

13、 使用 "_" 下划线匹配,与%不同的是 %可以匹配任意长度,而 "_" 只能匹配一个,如果要多匹配几个 就要多敲几个下划线

mysql> select name, price
    -> from tb_2
    -> where name LIKE('_____a');

14、 使用 AND 关键字 查询,可以多加几个查询条件,当所有的条件都满足时,则显示

mysql> select id, name, price
    -> from tb_2
    -> where id > 3 AND price > 5;

15、 使用 OR 关键字的多条件查询 只要两个条件满足其中一个 就返回数据

mysql> select name, price
    -> from tb_2
    -> where name = 'o%' OR price > 5;
 

16、 使用 DISTINCT 去除重复的值

select distinct id from tb_2;

17、 使用 ORDER BY 关键字对查询结果排序 默认是升序

mysql> select name, price 
    -> from tb_2
    -> order by price;

多列排序 先按照 name排序,再按 price排序

mysql> select name, price 
    -> from tb_2
    -> order by name, price;

18、 使用 DESC 降序排序

mysql> select id, name, price
    -> from tb_2
    -> order by id desc;

19、 分组查询 通常和聚合函数一起使用,例如 : MAX()、 MIN()、 COUNT()、 SUM()、 AVG()

mysql> select id, group_concat(name) as names 
    -> from tb_2
    -> group by id;

20、 分组过滤 :和where过滤的区别是,having是再分组后进行过滤,而where这是再未分组过滤

mysql> select id, group_concat(name) as names, price
    -> from tb_2
    -> group by id having(price) > 20;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值