Oracle 跨两个表计数

发布于 2024-11-03 01:10:43 字数 350 浏览 4 评论 0原文

我有两个具有相同列的表。一个表包含导入的数据,另一个表包含特定于我的应用程序的数据:

IMPORT_TABLE     MY_TABLE
COL1   COL2      COL1   COL2
"A"    "1"       "A"    "2"
"B"    "1"       "B"    "1"

我需要做的是编写一个查询,该查询将告诉我,对于 COL1 中的给定值,我在各个表的 COL2 中具有不同的值。因此,当我运行查询时,我将返回 COL1 的值“A”。这告诉我需要将“A”“1”插入到MY_TABLE中。

我怎样才能完成查询?我知道如何在单个表上进行分组,但不知道如何跨表进行分组。

I have two tables that have identical columns. One table houses imported data, the other table houses data specific to my application:

IMPORT_TABLE     MY_TABLE
COL1   COL2      COL1   COL2
"A"    "1"       "A"    "2"
"B"    "1"       "B"    "1"

What I need to do is write a single query that will tell me, for a given value in COL1, I have differing values in COL2 across the tables. So, when I run the query I woud get back the value "A" for COL1. This tells me that I need to insert "A" "1" into MY_TABLE.

How can I accomplish the query? I know how to do a Group By on a single table but not across tables.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

゛时过境迁 2024-11-10 01:10:43

如果您只想获取 IMPORT_TABLE 中不存在于 MY_TABLE 中的行,

SELECT col1, col2
  FROM import_table
MINUS
SELECT col1, col2
  FROM my_table

如果 col1 是唯一的,您也可以这样做

SELECT import.col1, import.col2 imported_col2, mytbl.col2 my_col2
  FROM import_table import 
       FULL OUTER JOIN my_table mytbl ON (mytbl.col1 = import.col1)

If you just want to get the rows in IMPORT_TABLE that don't exist in MY_TABLE

SELECT col1, col2
  FROM import_table
MINUS
SELECT col1, col2
  FROM my_table

If col1 is unique, you could also do

SELECT import.col1, import.col2 imported_col2, mytbl.col2 my_col2
  FROM import_table import 
       FULL OUTER JOIN my_table mytbl ON (mytbl.col1 = import.col1)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文