DQL(Data Query Language):数据查询语言,用以查询数据库中表的记录(数据)。

CREATE TABLE exam(

id INT PRIMARY KEY AUTO_INCREMENT,

NAME VARCHAR(20) NOT NULL,

chinese DOUBLE,

math DOUBLE,

english DOUBLE

);

INSERT INTO exam VALUES(NULL,'关羽',85,76,70);

INSERT INTO exam VALUES(NULL,'张飞',70,75,70);

INSERT INTO exam VALUES(NULL,'赵云',90,65,95);

INSERT INTO exam VALUES (NULL,'黄忠',NULL,88,76);

一、基本查询

select关键字后面跟着的是字段名,*表示查询结果显示所有字段。

1、查询所有信息与指定信息

-- 查询表中所有学生的信息

SELECT * FROM exam;

SELECT id,NAME,chinese,math,english FROM exam;

-- 查询表中所有学生的姓名和英语成绩

SELECT NAME,english FROM exam;

2、清除重复值

-- 过滤重复的英语成绩

SELECT DISTINCT english FROM exam;

3、查询结果参与运算

参与运算的需要是数值类型。

-- 计算总分并以score显示 也可省去 AS (如果有null值,结果也会为null,可用ifnull(x,y))

SELECT NAME,math+chinese+english AS score FROM exam;

-- 查询所有成绩的总和,如果null用0代替。

SELECT NAME,IFNULL(math,0)+IFNULL(chinese,0)+IFNULL(english,0) AS score FROM exam;

二、条件查询

SELECT 字段名 FROM 表名 WHERE 条件

1、比较运算符

-- 查询姓名为张飞的成绩

SELECT * FROM exam WHERE NAME='张飞';

-- 查询英语成绩大于90的同学

SELECT * FROM exam WHERE english>90;

-- 查询数学成绩为75,76的同学 IN(集合)

SELECT NAME,math FROM exam WHERE math IN(75,76);

-- 查询英语成绩为null的同学 is null 而不是 = null

SELECT NAME,chinese FROM exam WHERE chinese IS NULL;

-- 查询英语成绩[70,95]区间内的同学 BETWEEN..AND

SELECT NAME,english FROM exam WHERE english BETWEEN 70 AND 95;

-- 查询所有姓张的同学 模糊查询 LIKE pattern

SELECT * FROM exam WHERE NAME LIKE '张%';

MySQL通配符

%:匹配任意多个字符串。

_:匹配一个字符。

2、逻辑运算符

-- 查询数学大于70,语文大于80的同学

SELECT * FROM exam WHERE math>70 AND chinese>80;

-- 查询语文成绩不大于80的同学

SELECT * FROM exam WHERE NOT(chinese>80);

-- 查询数学成绩大于90,或者语文成绩大于80的同学

SELECT * FROM exam WHERE math>90 OR chinese>80;

order by排序

1、单列排序

-- 排序查询 select column1,column2.. from table_name order by column_name asc|desc

SELECT NAME,IFNULL(chinese,0) FROM exam ORDER BY chinese;-- 默认升序asc

SELECT NAME,IFNULL(chinese,0) FROM exam ORDER BY chinese DESC;-- 指定降序desc

2、组合排序

-- 查询所有同学信息,英语默认升序,英语成绩相同的情况下,按数学成绩降序

SELECT * FROM exam ORDER BY english,math DESC;

聚合函数

聚合函数将会忽略空值,与此前不同,聚合函数可处理一列的值:求和,求平均等等。

1、COUNT:计算个数

-- 统计班级共有几个学生

SELECT COUNT(id) id_count FROM exam;

SELECT COUNT(1) FROM exam;

SELECT COUNT(*) FROM exam;

-- 统计数学成绩大于80的学生个数

SELECT COUNT(math) FROM exam WHERE math>80;

2、SUM:求和

-- 统计数学总成绩

SELECT SUM(math) FROM exam;

-- 统计语文、英语、数学各科的总成绩

SELECT SUM(math),SUM(chinese),SUM(english) FROM exam;

-- 统计语文、英语、数学各科的总成绩

SELECT SUM(IFNULL(math,0)+IFNULL(chinese,0)+IFNULL(english,0)) AS all_sum FROM exam;

3、AVG:求平均

-- 查询数学平均分

SELECT AVG(math) FROM exam;

4、MAX/MIN:最大/最小值

-- 查询最小的语文成绩

SELECT NAME,MIN(IFNULL(chinese,0)) FROM exam;

-- 查询最大的英语成绩

SELECT NAME,MAX(english) FROM exam;

mysql查询数学成绩信息_【MySQL】:利用DQL查询表中的数据相关推荐

  1. mysql 查询两表 两列 比较大小写_mysql 查询表中列的数据不区分大小写的解决

    mysql查询默认是不区分大小写的 如: select * from some_table where str='abc'; select * from some_table where str='A ...

  2. mysql查询学生成绩语句_查询每个学生的各科成绩sql语句

    展开全部 1.查询每个学生的各科成绩sql语句: select a.studentid,a.name,a.sex,v1.score as '语文',v2.score as '数学', v3.score ...

  3. 用mysql查询图书的信息_PHP+MySQL 利用mysql_fetch_row模糊查询图书信息

    一 代码 td{ font-size:9pt; } .style2 {color: #FFFFFF} 应用mysql_fetch_row()函数从数组结果集中获取信息 请输入图书名称 编号 图书名称 ...

  4. mysql查询数据库文件信息_查询数据库信息

    SELECT a.name [文件名称] ,cast(a.[size]*1.0/128 as decimal(12,1)) AS [文件设置大小(MB)] ,CAST( fileproperty(s. ...

  5. mysql查询单个员工信息_PHP+MySQL实现模糊查询员工信息功能示例

    本文实例讲述了PHP+MySQL实现模糊查询员工信息功能.分享给大家供大家参考,具体如下: 一.代码 注意两点: 1.用Notepad+编辑时,格式选择:[编码字符集]->[中文]->[g ...

  6. mysql查询所有图书信息_PHP+MySQL使用mysql_num_rows实现模糊查询图书信息功能

    本文实例讲述了PHP+MySQL使用mysql_num_rows实现模糊查询图书信息功能.分享给大家供大家参考,具体如下: 一.代码 td{ font-size:9pt; } .style2 {col ...

  7. mysql 将xml插入数据库_从xml文档中读取数据并插入mysql数据库中

    // TODO: Add your control notification handler code here CMarkup xml; xml.Load("色谱案例表.xml" ...

  8. Mysql查询各科成绩前三名并分别排序

    Mysql查询各科成绩前三名并分别排序 这个问题是之前1个朋友学mysql他们老师布置的作业,一开始我没有做过,而且刚出来做开发很多学过的东西都忘记了. 表结构如下: 一开始我是这样写的: selec ...

  9. 怎么查mysql数据库版本信息查询_mysql 查询版本(mysql查询数据库版本信息)

    mysql 查询版本(mysql查询数据库版本信息) 2020-07-24 11:32:43 共10个回答 1.通过mysql的-V参数查询版本信息mysql-V2.登录mysql时可以查询版本信息m ...

最新文章

  1. 《JAVA与模式》之简单工厂模式
  2. 并发编程基础之volatile关键字的用法
  3. python得到windows自启动列表
  4. Sonnedix收购意大利11.2MW光伏电站产品组合
  5. (150)System Verilog仿真结束机制
  6. linux查看hid设备,linux hid设备读写
  7. clone() 操作系统实验
  8. 论文翻译:Two-phase Hair Image Synthesis by Self-Enhancing Generative Model
  9. 转载:eclipse 搭建SSH项目(第二篇,有具体的项目例子)
  10. 编译与运行、解释程序与编译程序
  11. win10计算机自带的游戏怎么打开方式,win10自带游戏在哪里?手把手教你打开win10自带游戏...
  12. Pr 入门教程如何修改过渡效果设置?
  13. i春秋《从0到1:CTFer成长之路》通关WP
  14. 程序员值得收藏的41个电子书搜索网站
  15. 在Unity中实现基于粒子的水模拟(三:混合屏幕)
  16. Micropython——关于通信I2C协议的应用和原理讲解
  17. 计算机ram和rom的特点的是,什么是ROM和RAM?它们各有什么特点?
  18. 主攻文推荐攻守都有系统_坚守最后一道防线-第五十五章 攻守转换在线阅读-顶点小说...
  19. python多进程和进程池
  20. Android压缩图片并且保存到本地内存卡中

热门文章

  1. java2ee preview_JavaEE 的基本实现
  2. 今天跟好朋友的一段超长爆笑聊天记录(QZone搬家)
  3. 读完研继续读博还是先工作几年再读博好一些?
  4. 巧妙解决-数学家年龄问题
  5. 【文本生成】评价指标:事实一致性Evaluating the Factual Consistency of Abstractive Text Summarization
  6. 计算机组成原理诺,计算机组成原理与系统结构 第8章 计算机系统结构.ppt
  7. 2021 ICPC沈阳 J.Luggage Lock(bfs,模拟)
  8. 《Android系统源代码情景分析》一书勘误
  9. 如何进行用户体验的评估分析
  10. 企业安全建设丨标准化建设之网络安全应急响应浅析