MySQL复杂SQL查询:单表操作详解
120 浏览量
更新于2024-08-30
收藏 81KB PDF 举报
"MySQL常用SQL语句总结,涵盖复杂查询,包括单表查询、大小比较、确定范围、IN和NOT IN操作等。"
在数据库管理中,SQL(结构化查询语言)是用于与关系型数据库交互的语言。MySQL作为一款广泛使用的开源数据库系统,其SQL语法是开发者必须掌握的基础。本文将对MySQL的一些常见SQL语句进行总结,特别是涉及复杂查询的部分。
1. **复杂SQL查询**
- **单表查询**
- **选择指定列**:你可以通过`SELECT`关键字来选择想要显示的列,例如查询全体学生的学号和姓名:
```sql
SELECT Sno AS 学号, Sname AS 姓名 FROM student;
```
或者不指定别名:
```sql
SELECT Sno, Sname FROM student;
```
- **查询全部列**:如果需要获取表中的所有列,可以使用星号`*`:
```sql
SELECT * FROM student;
```
- **列的别名和计算**:可以为列指定别名,并进行简单的计算,如计算出生年份:
```sql
SELECT Sname AS 姓名, (2014 - Sage) AS 出生年 FROM student;
```
- **消除重复行**:使用`DISTINCT`关键字去除重复行,如查询选修了课程的学生唯一学号:
```sql
SELECT DISTINCT Sno AS '选修了课程的学生学号' FROM SC;
```
- **大小比较**
- 可以根据条件筛选数据,例如查询计算机系(IS)全体学生名单:
```sql
SELECT Sname AS '学生姓名' FROM student WHERE Sdept = 'IS';
```
- 查询全体20岁以下的学生姓名和年龄:
```sql
SELECT Sname AS '姓名', Sage AS '年龄' FROM student WHERE Sage < 20;
```
- **确定范围**
- 使用`BETWEEN`关键字可以查询指定范围内的数据,例如查询20到23岁(含20和23)的学生信息:
```sql
SELECT Sname AS '姓名', Sdept AS '系别', Sage AS '年龄' FROM student WHERE Sage BETWEEN 20 AND 23;
```
- **IN和NOT IN操作**
- `IN`用于查询在特定集合内的数据,例如查询IS系和CS系学生姓名和性别:
```sql
SELECT Sname AS '姓名', Ssex AS '性别' FROM student WHERE Sdept IN ('IS', 'CS');
```
- 而`NOT IN`则用于查询不在特定集合内的数据,例如查询既不属于IS系,也不属于MA系的学生姓名和年龄:
```sql
SELECT Sname AS '姓名', Sage AS '年龄' FROM student WHERE Sdept NOT IN ('IS', 'MA');
```
这些SQL语句构成了MySQL查询的基础,熟练掌握它们能帮助你有效地处理和分析数据。在实际应用中,还可以结合`ORDER BY`进行排序,`GROUP BY`进行分组,`HAVING`过滤分组后的结果,以及`JOIN`操作连接多个表,实现更复杂的查询需求。了解并灵活运用这些语句,将极大地提升你的数据库操作能力。
2020-09-09 上传
2009-03-12 上传
2020-09-10 上传
2020-12-16 上传
weixin_38659159
- 粉丝: 6
- 资源: 961
最新资源
- 火炬连体网络在MNIST的2D嵌入实现示例
- Angular插件增强Application Insights JavaScript SDK功能
- 实时三维重建:InfiniTAM的ros驱动应用
- Spring与Mybatis整合的配置与实践
- Vozy前端技术测试深入体验与模板参考
- React应用实现语音转文字功能介绍
- PHPMailer-6.6.4: PHP邮件收发类库的详细介绍
- Felineboard:为猫主人设计的交互式仪表板
- PGRFileManager:功能强大的开源Ajax文件管理器
- Pytest-Html定制测试报告与源代码封装教程
- Angular开发与部署指南:从创建到测试
- BASIC-BINARY-IPC系统:进程间通信的非阻塞接口
- LTK3D: Common Lisp中的基础3D图形实现
- Timer-Counter-Lister:官方源代码及更新发布
- Galaxia REST API:面向地球问题的解决方案
- Node.js模块:随机动物实例教程与源码解析