mysql写一个包含left join、right join、full join、inner join用法的完整案例
时间: 2023-08-16 07:40:22 浏览: 114
假设有两个表,一个是商品表(products),包含商品ID和商品名称;另一个是订单表(orders),包含订单ID、商品ID、订单数量和订单日期。下面是一个包含left join、right join、full join、inner join用法的完整案例:
1. left join用法
```
SELECT products.product_name, orders.order_quantity
FROM products
LEFT JOIN orders
ON products.product_id = orders.product_id;
```
解释:这个查询将返回所有商品以及与之关联的订单数量。如果商品没有相关订单,则订单数量为NULL。
2. right join用法
```
SELECT products.product_name, orders.order_quantity
FROM products
RIGHT JOIN orders
ON products.product_id = orders.product_id;
```
解释:这个查询将返回所有订单以及与之关联的商品名称。如果订单没有相关商品,则商品名称为NULL。
3. full join用法
```
SELECT products.product_name, orders.order_quantity
FROM products
FULL JOIN orders
ON products.product_id = orders.product_id;
```
解释:这个查询将返回所有商品和订单,包括没有关联的记录。如果商品没有相关订单,则订单数量为NULL;如果订单没有相关商品,则商品名称为NULL。
4. inner join用法
```
SELECT products.product_name, orders.order_quantity
FROM products
INNER JOIN orders
ON products.product_id = orders.product_id;
```
解释:这个查询将返回所有商品以及与之关联的订单数量。只返回有关联的记录,如果商品没有相关订单则不会返回该商品信息,反之亦然。
阅读全文