day18--mysql单表&多表2
需积分: 0 56 浏览量
更新于2022-08-08
收藏 445KB DOCX 举报
【SQL语句(DQL)详解】
SQL,全称Structured Query Language,是用于管理关系数据库的标准语言。在本章节中,我们将重点讨论SQL中的数据查询语言(DQL),特别是针对单表和多表的查询。
### 1.1 DQL准备工作与语法
我们通过创建`product`表来准备数据。`product`表包含以下字段:
- `pid`: 主键,整型,自动递增
- `pname`: 商品名称,最大长度20的varchar类型
- `price`: 商品价格,双精度浮点型
- `category_id`: 商品类别ID,最大长度32的varchar类型
然后,我们向`product`表中插入了13条记录,涵盖了不同品牌和类别的商品。
### 1.1.2 语法
基本的查询语句结构如下:
```sql
SELECT [DISTINCT] * | 列名,列名
FROM 表
WHERE 条件
```
- `SELECT`关键字用于指定要查询的列,可以使用`*`代表所有列,或者指定具体的列名。
- `DISTINCT`用于去除查询结果中的重复值。
- `FROM`后接要查询的表名。
- `WHERE`用来设定查询条件。
### 1.2 简单查询实例
1. 查询所有商品信息:
```sql
SELECT * FROM product;
```
2. 查询商品名和价格:
```sql
SELECT pname, price FROM product;
```
3. 使用别名,如给表名设别名`p`,列名设别名`pn`:
- 表别名:`SELECT * FROM product AS p;`
- 列别名:`SELECT pname AS pn FROM product;`
4. 去掉价格列的重复值:
```sql
SELECT DISTINCT price FROM product;
```
5. 运算查询,例如将价格加10元显示:
```sql
SELECT pname, price + 10 FROM product;
```
### 1.3 条件查询
条件查询允许我们根据特定条件筛选数据,包括但不限于以下操作:
- 比较运算符:`>`, `<`, `<=`, `>=`, `=`, `<>`
- `BETWEEN ... AND ...`:选择位于两个值之间的数据,包含边界
- `IN(set)`:选择属于指定集合的数据
- `LIKE 'pattern'`:模糊查询, `%`代表任意数量的字符,`_`代表单个字符
- `IS NULL`:检查值是否为空
举例来说:
- 查询商品名为“花花公子”的所有信息:
```sql
SELECT * FROM product WHERE pname = '花花公子';
```
- 查询价格为800的商品:
```sql
SELECT * FROM product WHERE price = 800;
```
- 查询价格不为800的所有商品:
```sql
SELECT * FROM product WHERE price <> 800;
```
### 多表查询
在实际应用中,常常需要对多个相关联的表进行查询。例如,如果有一个`category`表,我们可能需要查询特定类别下的所有商品。这时,可以使用`JOIN`操作连接两个表:
```sql
SELECT p.pname, p.price, c.category_name
FROM product p
JOIN category c ON p.category_id = c.category_id
WHERE c.category_name = '电子产品';
```
这将返回`电子产品`类别下所有商品的名称和价格。
总结,SQL的DQL部分主要包括对单表的基本查询、别名使用、条件筛选以及运算查询。在实际工作中,掌握这些基本技能是进行高效数据库操作的基础,对于处理复杂的数据查询需求至关重要。随着学习深入,你还可以学习到更复杂的查询技巧,如子查询、聚合函数、排序、分组等,这些都是构建强大数据库应用的重要工具。

杏花朵朵
- 粉丝: 2188
最新资源
- 嵌入式系统复习题1.doc
- 沁阳市第一中学多媒体设备及计算机设备采购项目.doc
- 肯德基网络营销策划分析ppt课件.ppt
- 有答案的《工程项目管理》复习题.doc
- 石油总公司中下游工程建设项目管理规定教材.doc
- 某自动化股份公司IEC61850技术培训.pptx
- 云计算建设方案样本.doc
- 工程网络计划网络图.ppt
- 数学建模网络赛特等奖土地储备风险评估方案.doc
- 网络故障分析报告.pdf
- 李宁电子商务方案解读.ppt
- 网络时间协议简介.doc
- (源码)基于C++的Vive Lighthouse室内定位传感器系统.zip
- 两个开挂的Excel同步数据到Word技巧!(联动)get√.pdf
- 智慧城市建设带动实体经济发展.docx
- 三级网络第一章的重点(最新整理).pdf