我需要从3个表中获得不同的值.

当我执行此代码时:

select DISTINCT(city) from a,b,c 

我收到一个错误,说我的"城市"栏目含糊不清.

我还试过这个:

select DISTINCT(city) from a NATURAL JOIN b NATURAL JOIN c

使用此代码,我不会从我的表中收到任何信息.

让我以我想要做的事情为例向您展示一下:

TABLE A               TABLE B                TABLE C
id  |  city           id  |  city            id  | city
1   |  Krakow         1   |  Paris           1   | Paris
2   |  Paris          2   |  London          2   | Krakow
3   |  Paris          3   |  Oslo
4   |  Rome

我需要这样的结果

RESULTS
 city
 ----
 Krakow
 Paris
 Rome
 London
 Oslo

城市的秩序对我来说并不重要,我只需要拥有所有的城市,每个城市应该只有一个代表.

有什么 idea 吗?我本来想用JOIN里的id's,但是没有联网,所以不能用.

推荐答案

关键字UNION将在结果列表中返回unique条记录.当指定ALL(UNION ALL)时,将在结果集上保留重复项,这是OP不想要的.

SELECT city FROM tableA
UNION
SELECT city FROM tableB
UNION
SELECT city FROM tableC

结果

╔════════╗
║  CITY  ║
╠════════╣
║ Krakow ║
║ Paris  ║
║ Rome   ║
║ London ║
║ Oslo   ║
╚════════╝

Database相关问答推荐

网络分区恢复后副本的更新数据发生了什么

如何理解mysql explain 命令

MySQL主键:UUID / GUID vs BIGINT(时间戳+随机)

为什么引用 SQLite rowid 会导致外键不匹配?

何时将数据库称为嵌入式数据库?

MS Access:如何在 VBA 中压缩当前数据库

如何使用 SELECT WHERE IN() 保持订单?

MySQL JDBC Driver中cachePrepStmts和useServerPrepStmts有什么区别

Oracle在哪些情况下会自动创建索引?

如何在数据库中搜索和替换字符串的所有实例?

如何将mysql的默认端口从3306更改为3360

SQL 中的 CAST 和 CONVERT 是否相同?

面向文档的数据库是否旨在取代关系数据库?

PDO SQL 状态00000但仍然错误?

如何使用 Hibernate 在不丢失数据的情况下更新数据库模式?

将 .csv 文件导入 Android 中的 Sqlite

如何使用 Entity Framework CF 在父级之前删除子实体?

Django Atomic Transaction 是否锁定数据库?

DBMS中数据模型和数据库模式的区别?

位图索引有何帮助?