文章详情

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

请输入下面的图形验证码

提交验证

短信预约提醒成功

零基础学MySQL(四)-- 数据库最常用的操作【查询基础篇 -- 单表查询】

2023-08-21 09:11

关注

在这里插入图片描述



在这里插入图片描述


1️⃣基本语法

SELECT [DISTINCT] * | (列名,列名,...) FROM 表名;

(1) SELECT 指定查询哪些列的数据
(2) * 代表查询所有列
(3) DISTINCT 可选,显示结果是否去除重复数据

2️⃣基本练习

以球员表 nba_player 为例

在这里插入图片描述(1) 查询表中所有球员的信息

SELECT * FROM nba_player;

(2) 查询表中所有球员的身高和臂展

SELECT height, arm_span FROM nba_player;

(3) 查询表中去重后的球员身高

SELECT DISTINCT height FROM nba_player;

注意:查询的记录,每个字段都相同才会去重

3️⃣补充说明

(1) 使用表达式对查询的列进行运算

统计每个球员的身高加臂展

SELECT `name`, (height + arm_span) FROM nba_player;

(2) 在 select 语句中可使用 as 语句取别名

使用别名表示球员的名字和身高

SELECT `name` AS '名字', height AS '身高' FROM nba_player;

1️⃣基本语法

SELECT [DISTINCT] * | (列名,列名,...) FROM 表名WHERE 条件;

2️⃣在 where 子句中经常使用的运算符

在这里插入图片描述

使用 LIKE 操作符,% 表示0到多个任意字符,_ 表示单个任意字符
查询表结构: DESC 表名
注意:where字句中不能使用聚合函数,如果使用应该事先使用 as 语句取别名

3️⃣基本练习

(1) 查询 LeBron James 的信息

SELECT * FROM nba_playerWHERE `name` = 'LeBron James';

(2) 查询身高大于200并且臂展大于身高的球员

SELECT * FROM nba_playerWHERE height > 200 AND arm_span > height;

(3) 查询身高大于200并且首字母是L的球员

SELECT * FROM nba_playerWHERE height > 200 AND `name` LIKE 'L%';

(4) 查询第三个字母是m的球员名字与工资

SELECT `name`,sal FROM nba_playerWHERE `name` LIKE '__m%';

(5) 查询身高在190–200之间的球员

SELECT * FROM nba_playerWHERE height BETWEEN 190 AND 200;

(6) 查询身高为196,198,201的球员

SELECT * FROM nba_playerWHERE height IN (196,198,201);

(7) 查询臂展比身高长10以上的球员

SELECT * FROM nba_playerWHERE arm_span - height > 10);

1️⃣基本语法

SELECT [DISTINCT] * | (列名,列名,...) FROM 表名ORDER BY 列名 ASC|DESC;

ASC 表示升序(默认),DESC 表示降序

2️⃣基本练习

将球员信息按照身高进行降序排列

SELECT * FROM nba_playerORDER BY height DESC;

1️⃣基本语法

SELECT [DISTINCT] * | (列名,列名,...) FROM 表名LIMIT 从第(n+1)行显示, 显示n行;

2️⃣基本练习

按球员进入NBA的时间降序取出,每页显示3条记录,请分别显示第1页和第2页

--1SELECT * FROM nba_playerORDER BY enter_nba_time DESCLIMIT 0, 3;--2SELECT * FROM nba_playerORDER BY enter_nba_time DESCLIMIT 3, 3;

1️⃣基本语法

SELECT [DISTINCT] * | (列名,列名,...) FROM 表名GROUP BY 列名;

2️⃣基本练习

显示每个位置的球员数量和平均工资

SELECT COUNT(*),AVG(sal),`position` FROM nba_playerGROUP BY `position`

1️⃣基本语法

SELECT [DISTINCT] * | (列名,列名,...) FROM 表名GROUP BY 列名HAVING 限制条件;

having 与 group by 一起使用

2️⃣基本练习

显示表中平均工资低于4000的篮球位置及其平均工资

SELECT AVG(sal),`position` FROM nba_playerGROUP BY `position`HAVING AVG(sal) < 4000;

如果select语句中同时包含以上字句,那么他们的顺序是:where --> group by --> having --> order by --> limit

1️⃣基本语法

SELECT [DISTINCT] * | (列名,列名,...) FROM 表名WHERE 条件GROUP BY 列名HAVING 限制条件ORDER BY 列名 ASC|DESCLIMIT 从第(n+1)行显示, 显示n行;

2️⃣基本练习

统计本表各个位置的平均工资,并且是大于3000的,并按照平均工资从高到低排序,取出前两行记录

SELECT AVG(sal),`position` FROM nba_playerGROUP BY `position`HAVING AVG(sal) > 3000ORDER BY AVG(sal) DESCLIMIT 0,2;

来源地址:https://blog.csdn.net/programmerchiu/article/details/128805191

阅读原文内容投诉

免责声明:

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

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

软考中级精品资料免费领

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

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

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

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

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

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

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