sql - 合并两个具有重复结果的表

标签 sql sqlite t-sql

我在如何查询如图所示的两个表时遇到问题

表1

id  module
1   Part1
2   Part2
3   Part3
4   Part4

表2

id  Town 
1    Town 1
2    Town 2
3    Town 4

查询结果

Module Town
Part1  Town 1
Part2  Town 1
Part3  Town 1
Part4  Town 1
Part1  Town 2
Part2  Town 2
Part3  Town 2
Part4  Town 2
Part1  Town 4
Part2  Town 4
Part3  Town 4
Part4  Town 4

我尝试使用 union 但得到了不同的结果。希望您能解决我的这个问题......

最佳答案

当您想要实现笛卡尔积时,您必须使用CROSS JOIN语句

试试这个:

SELECT table1.module, table2.town
FROM table1
CROSS JOIN table2

您可以看到 here 关于SQLite中的JOIN操作

关于sql - 合并两个具有重复结果的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39832017/

相关文章:

MySQL 按 3 列排序

mysql - 在 ORACLE 中将 SQL 查询从宽格式转换为长格式

ios - 在 NSFetchRequestController 中使用带有复杂 NSPredicate 的 NSFetchRequest

java - Android SQLite -- 使用 whereArgs 背后的逻辑是什么

sql-server - 存储过程中的账本报告逻辑

mysql - 按 200 行分组,从最新的 ID 开始

python - SQLite:选择所有日期值对,其中每个日期和第一个日期之间的距离是特定时间段的倍数

java - 如果字符串包含双引号,则搜索 SQLite 表

c# - XML 文件到 SQL 附加插入

sql - 如何在 max() 命令返回的记录中选择另一条数据