如何将子查询的结果连接到 PostgreSQL 中的表?
你好,我是 sql (postgresql) 新手
我有 2 个表作为 2 个不同选择的结果
all calls our customer contacts
number contact_id and contact_id name
3213 12 12 jonh
3213 34 16 michael
3213 43 65 hewlet
5432 16 32 steward
5432 51
6543 65
2322 54
2322 32
1 个号码可以属于不同的联系人...(联系人属于不同的客户)我需要选择 与第一个结果表不同的数字。以及第二张表中的联系人姓名..
以及我必须如何联合我的 2 个选择,
谢谢。
hello i'm newbie in sql (postgresql)
i have 2 tables as result of 2 differen selects
all calls our customer contacts
number contact_id and contact_id name
3213 12 12 jonh
3213 34 16 michael
3213 43 65 hewlet
5432 16 32 steward
5432 51
6543 65
2322 54
2322 32
1 number can belong to different contacts... (contacts belong to different customers) i need to select
distinct numbers from 1st result table. and names of this contacts from 2nd table..
and how i must unite my 2 selects
thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您将无法使用
distinct
关键字,因为您实际上还想从all_calls
表中选择contact_id
。相反,您需要使用聚合函数之一为每个不同的电话号码选择一个contact_id
。在此示例中,我使用
min()
函数,该函数将为我提供每个电话号码的contact_id
数字最小的联系人:You will not be able to use the
distinct
keyword, as you actually want to select also thecontact_id
from theall_calls
table. Instead, you will need to use one of the aggregate functions to select a singlecontact_id
for each distinct phone number.In this example I use the
min()
function, which will give me the contact with the numerically lowestcontact_id
for each phone number: