gpt4 book ai didi

sql - postgresql - 加入匹配的表以及不匹配的表?

转载 作者:行者123 更新时间:2023-11-29 12:56:47 25 4
gpt4 key购买 nike

所以我有一个连接,它可以工作,但它没有显示我想要的所有数据。目前我想查看 device_interface.c1 中的每一行,如果 device_interface.c1 = device_inventory.c1 那么我也想在列中查看它。现在我只看到了 device_interface.c1 = device_inventory.c1

下面是我的查询:

SELECT 
device_info.pk,
device_interface.fk,
device_interface.c1,
device_interface.c2,
device_inventory.c1
FROM
"test".device_info,
"test".device_interface,
"test".device_inventory
WHERE
device_info.pk = device_interface.fk AND
device_info.pk = device_inventory.fk AND
device_interface.c1 = device_inventory.c1 AND
device_interface.c2 = 'Physical'

示例输出:

device_info.pk  device_interface.c1   device_inventory.c1
1 1 1
1 3 3
1 95 95
2 55 55
2 634 634

所需输出示例:

device_info.pk  device_interface.c1   device_inventory.c1
1 1 1
1 2
1 3 3
1 4
1 5
1 6
1 95 95
2 55 55
2 56
2 57
2 634 634

最佳答案

left join 应该可以解决问题:

SELECT 
device_info.pk,
device_interface.fk,
device_interface.c1,
device_interface.c2,
device_inventory.c1
FROM
"test".device_info
LEFT JOIN
"test".device_interface
ON
device_info.pk = device_interface.fk
LEFT JOIN
"test".device_inventory
ON
device_info.pk = device_inventory.fk AND
device_interface.c1 = device_inventory.c1
WHERE
device_interface.c2 = 'Physical'

关于sql - postgresql - 加入匹配的表以及不匹配的表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41193897/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com