【发布时间】:2015-10-07 21:18:23
【问题描述】:
我需要获取未使用的记录。我的桌子是这样的:
分段表
| id | name |
-------------
| 1 | AAA |
| 2 | BBB |
| 3 | CCC |
| 4 | DDD |
segment_segment_assoc
| id | segment_name | child_name |
----------------------------------
| 1 | AAA | BBB |
| 2 | AAA | CCC |
segment_segment_assoc 表存储段之间的父/子关系。我需要一个能够count segment 表中有多少段not 在 segment_segment_assoc 表。
我想要这样做的方法是以某种方式将 segment_segment_assoc 表转换为单一名称类型表。例如,它应该转向这个 =>
| name |
--------
| AAA |
| BBB |
| CCC |
segment_segment_assoc.segment_name 和 segment_segment_assoc.child_name 列“附加”或“连接”在一起。一旦我有了这个,我就可以做一个“NOT IN”来查看segment_segment_assoc表中哪些段没有被“使用”。
这应该用 SQL 编写,但只是为了上下文,我使用的是 Postgres。
提前致谢!
【问题讨论】:
-
这只是一个简单的联合postgresql.org/docs/8.3/static/queries-union.html ...
select segment_name from association union select child_name from association -
删除了编辑。现在问题又回到了原来的问题。
标签: sql postgresql