以下是一个示例数据集:
Table 1: Orders
| order_id | customer_id | order_date | amount |
|----------|-------------|------------|--------|
| 1 | 101 | 2021-01-01 | 100 |
| 2 | 101 | 2021-02-01 | 200 |
| 3 | 102 | 2021-01-15 | 150 |
| 4 | 103 | 2021-02-07 | 75 |
Table 2: Customers
| customer_id | name | email |
|-------------|-----------|----------------------|
| 101 | John Doe | john.doe@example.com |
| 102 | Jane Doe | jane.doe@example.com |
| 103 | Bob Smith | bob.smith@example.com |
Table 3: Countries
| country_id | country_name |
|------------|---------------|
| 1 | USA |
| 2 | Canada |
我们可以使用以下代码来连接这三个表,并带有条件语句:
SELECT o.order_id, c.name, co.country_name
FROM Orders o
JOIN Customers c
ON o.customer_id = c.customer_id
JOIN Countries co
ON c.country_id = co.country_id
CASE
WHEN o.order_date BETWEEN '2021-01-01' AND '2021-01-31' THEN 'January'
WHEN o.order_date BETWEEN '2021-02-01' AND '2021-02-28' THEN 'February'
END AS Month
WHERE co.country_name = 'USA'
这个查询语句将返回在美国进行的订单的订单ID、客户姓名和订单日期所在的月份。它会连接所有三个表,并且只返回与条件“US”匹配的结果。
我们使用JOIN命令连接表,将三个表汇总在一起,并通过ON子句指定用于连接每个表的相应列。
我们使用CASE语句创建一个新列,其中语法为WH