【发布时间】:2020-12-08 21:35:36
【问题描述】:
我是 SQL 连接类型的新手,遇到了一个非常基本的问题。
我有两张桌子:
用户表
| id | City |
|---|---|
| 1 | San Francisco |
| 2 | Moscow |
| 3 | London |
| 4 | Washington |
城市表
| city | country |
|---|---|
| Moscow | Russia |
| San Francisco | USA |
| Washington | USA |
| London | England |
我从 users 表中选择 id 并将其与 citys 表中的相应国家/地区相匹配。我想使用 SQL 选择语句生成下表:
| id | country |
|---|---|
| 1 | USA |
| 2 | Russia |
| 3 | England |
| 4 | USA |
到目前为止,我已经写了以下内容,但我不知道从那里继续(或者这是否是一个正确的开始),因为 SQL 连接让我有点困惑。
SELECT users.city, cities.city FROM users INNER JOIN cities ON
【问题讨论】:
-
虽然将城市名称存储在
users表中存在问题:共享相同城市名称的地方呢?对于example,伦敦,肯塔基 vs. 伦敦,英格兰。 -
“旧金山”的拼写在原始版本中不一致。那是 actual 错误(由错字引起)吗?如果不是,对结果有何影响?是否可以编写容错 SQL 查询?
标签: mysql sql inner-join