做3d兼职网站wordpress 搜索结果页面
文章目录
- 原题
 - 题解
 - 解题笔记 —— JOIN USING()关键字对性能的提升
 
我是一名立志把细节都说清楚的博主,欢迎【关注】🎉 ~
原创不易, 如果有帮助 ,记得【点赞】【收藏】 哦~ ❥(^_-)~
如有错误、疑惑,欢迎【评论】指正探讨,我会尽可能第一时间回复的,谢谢支持
原题
销售表 Sales:
+-------------+-------+
| Column Name | Type  |
+-------------+-------+
| sale_id     | int   |
| product_id  | int   |
| year        | int   |
| quantity    | int   |
| price       | int   |
+-------------+-------+
 
(sale_id, year) 是销售表 Sales 的主键(具有唯一值的列的组合)。
 product_id 是关联到产品表 Product 的外键(reference 列)。
 该表的每一行显示 product_id 在某一年的销售情况。
 注意: price 表示每单位价格。
产品表 Product:
+--------------+---------+
| Column Name  | Type    |
+--------------+---------+
| product_id   | int     |
| product_name | varchar |
+--------------+---------+
 
product_id 是表的主键(具有唯一值的列)。
 该表的每一行表示每种产品的产品名称。
编写解决方案,以获取 Sales 表中所有 sale_id 对应的 product_name 以及该产品的所有 year 和 price 。
返回结果表 无顺序要求 。
结果格式示例如下。
示例 1:
输入:
Sales 表:
+---------+------------+------+----------+-------+
| sale_id | product_id | year | quantity | price |
+---------+------------+------+----------+-------+ 
| 1       | 100        | 2008 | 10       | 5000  |
| 2       | 100        | 2009 | 12       | 5000  |
| 7       | 200        | 2011 | 15       | 9000  |
+---------+------------+------+----------+-------+
 
Product 表:
+------------+--------------+
| product_id | product_name |
+------------+--------------+
| 100        | Nokia        |
| 200        | Apple        |
| 300        | Samsung      |
+------------+--------------+
 
输出:
+--------------+-------+-------+
| product_name | year  | price |
+--------------+-------+-------+
| Nokia        | 2008  | 5000  |
| Nokia        | 2009  | 5000  |
| Apple        | 2011  | 9000  |
+--------------+-------+-------+
 
题解
解法一: JOIN ON 关键字。
SELECTproduct_name, year, price
FROMSales 
JOINProduct
ONSales.product_id = Product.product_id;
 
解法二:JOIN USING() 关键字。性能比解法一的更好一点,并且写法更简单。
SELECTproduct_name, year, price
FROMSales 
JOINProduct
USING(product_id);
 
解题笔记 —— JOIN USING()关键字对性能的提升
解法一: JOIN ON 关键字
- 这是比较常规的连接查询。 
JOIN操作必须配合ON关键字使用。ON后面接两个表的连接条件。
 
解法二:JOIN USING() 关键字
- 连接查询时,连接条件是同名字段,性能会高于 
JOIN ON关键字,并且写法上更方便(直接使用USING( 同名字段 )即可)。 - 可以指定有效的同名连接条件,忽略无效的同名字段。
 
关于 JOIN 关键字,图文详解请看文章:
【MySQL】连接查询(JOIN 关键字)—— 图解:内连接、外连接、左连接、左外连接、右连接、右外连接
我是一名立志把细节都说清楚的博主,欢迎【关注】🎉 ~
原创不易, 如果有帮助 ,记得【点赞】【收藏】 哦~ ❥(^_-)~
如有错误、疑惑 ,欢迎【评论】指正探讨,我会尽可能第一时间回复的,谢谢支持
