sql - 如何创建一个视图,其中一个表中的每一行都被视为另一个表中每一行的子级?
问题描述
我正在尝试创建一个视图,该视图结合了两个表以具有以下形式。
表 A(第一列)
FIRST
-----
A
B
C
表 B(第二列)
SECOND
-----
1
2
3
结果
FIRST | SECOND
------|-------
A | 1
A | 2
A | 3
B | 1
B | 2
B | 3
C | 1
C | 2
C | 3
我一直在努力解决这个问题。类似下面的代码是我希望最终得到的视图,以使其与我的其他视图相似,但我尝试过的所有选项都没有完全正确。
SELECT
FIRST,
'' AS SECOND
FROM Table A
UNION ALL
SELECT
'' AS FIRST,
SECOND
FROM Table B
解决方案
您正在寻找cross join
:
select a.first, b.second
from a cross join
b
order by a.first, b.second;
推荐阅读
- android - 如何在 MediaStyle 通知中显示 MediaPlayer 位置 - Android
- c# - 如何链接图像源 =“?” 使用 DataTable 中的值(路径图像)?wpf
- google-apps-script - 在 Google 表格中,如何编写脚本将绘图移动到工作表上的特定位置?
- javascript - 有没有办法检测文本区域内的编程代码?
- c - 替换文本文件中的单词的功能未按预期工作
- c# - 无法连接到 ASP.NET 数据库
- sql - PLSQL 缺少逗号
- pytorch - Pytorch将张量列表合并在一起
- python - 将列表中的每个元素乘以特定数字
- python - python 抓取新闻文章时出现 ArticleException 错误