文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Mysql的DQL查询操作全面分析讲解

2022-12-03 18:00

关注

DQL简介

概念:DQL(data query language)数据查询语言 select操作

排序规则:

- select 表达式1|字段,.... - from 表名 where 条件 - group by 列名 - having 条件 - order by 列名 asc|desc - limit 位置,数量

语法结构:

    SELECT [ALL | DISTINCT] ALL表示查询出所有的内容 DISTINCT 去重
            {* | 表名.* | 表名.字段名[ AS 别名][,...]} 指定查询出的字段的
        FROM
            表名[AS 别名][,表1... AS 别名]
        [INNER | [LEFT | RIGHT] [OUTER] JOIN 另一张表名 [AS 别名] ON 关联条件]
        [WHERE 条件]
        [GROUP BY 分组字段[,...]] 
        [HAVING 给分组后的数据进行条件筛选]
        [ORDER BY 排序字段[,...]]
        [LIMIT [startIndex,]pageSize]

Mysql的DQL查询操作全面分析讲解

具体操作

数据准备

create database if not exists test;
use test;
create table if not exists data(
id tinyint primary key auto_increment,
price double NOT null,
name varchar(20) not null,
type varchar(20) not null)
;
insert into data values
(null,900,'洗衣机','b'),
(null,1900,'冰箱','b'),
(null,2900,'空调','b'),
(null,3900,'电视','b'),
(null,150,'衣服','c'),
(null,180,'裤子','c'),
(null,200,'鞋子','c'),
(null,188,'洗面奶','a'),
(null,188,'洗发水','a'),
(null,199,'洗衣液','a'),
(null,88,'沐浴露','a'),
(null,5,'泡面','d'),
(null,15,'饼干','d'),
(null,30,'咖啡','d');

Mysql的DQL查询操作全面分析讲解

简单查询

Mysql的DQL查询操作全面分析讲解

select * from data;
select name,price from data;
select * from data as d;
select * from data d;
select d.name,d.price from data d;
select  distinct price from data;
select name,price +100 newprice from data;

运算符

Mysql的DQL查询操作全面分析讲解

算术运算符

select name,price *1.5 newprice from data;

条件查询

select * from data where name='洗衣机';
select * from data where  !(price>100);
select * from data where price between 200 and 1000;
select * from data where price in(188,900);
-- 等于下面两句
select * from data where price = 188 or price =900;
select * from data where price = 188 || price =900;
select * from data where name like '%衣%';
select * from data where name like '衣%';
select * from data where name like '_衣%';
select * from data where id is null;

注释:当有NULL作为比较大小的对象时,最大值和最小值均为null

排序查询

Mysql的DQL查询操作全面分析讲解

select * from data order by price;
select * from data order by price desc;
select distinct price from data order by price desc;
select * from data order by price,id;

聚合查询

Mysql的DQL查询操作全面分析讲解

select count(*) from data;
-- 不全为空的行数
select count(id) from data;
-- 通过主键值查询行数
select count(*) from data where price<200;
select sum(price) from data where type='A';
select max(id) from data;
select min(price) from data;
select max(price) max_price,min(price) min_price from data;
select avg(price) from data where type='c';

null值的处理

Mysql的DQL查询操作全面分析讲解

分组查询

Mysql的DQL查询操作全面分析讲解

Mysql的DQL查询操作全面分析讲解

select sum(price) from data group by type;
select type,count(id) from data group by type;

条件筛选

Mysql的DQL查询操作全面分析讲解

select type,count(id) count from data group by type having count=4 order by type;

分页查询

Mysql的DQL查询操作全面分析讲解

分页显示

Mysql的DQL查询操作全面分析讲解

select * from data limit 5;
-- 从第四条开始依次向后显示五条
select * from data limit 3,5;

insert into select语句

Mysql的DQL查询操作全面分析讲解

create table data2(
name varchar(10),
price double);
insert into data2 select name,price from data;
select * from data2;
create table data3(
type varchar(10),
num int
);
insert into data3 select type,count(*) from data group by type order by count(*);
select * from data3;

总结

Mysql的DQL查询操作全面分析讲解

到此这篇关于mysql的DQL查询操作全面分析讲解的文章就介绍到这了,更多相关Mysql DQL查询内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯