gpt4 book ai didi

mysql - 加入三个表 - Mysql 一个内部和外部连接也许?

转载 作者:可可西里 更新时间:2023-11-01 08:05:47 27 4
gpt4 key购买 nike

我正在努力让这个查询工作。我有三个表,我想做一个查询来获取红色区域。每个圆圈是一个具有不同结构的表。我已经管理了很多内部连接的组合,但我特别不能得到所有的红色区域。

付款:idPayment、idInvoice、金额、日期。

B Invoice : idInvoice , amount date.

C 本票:IdNote、idInvoice、金额、日期。

enter image description here

到目前为止...

SELECT B.idInvoice,A.idPayment,C.idNote FROM (Invoice b INNER JOIN payments a ON a.idInvoice=b.idInvoice) LEFT OUTER JOIN PromissoryNotes c ON c.idInvoice=b.idInvoice ORDER BY idInvoice.

行不通

有什么建议吗?

最佳答案

您非常接近 - 另一个 OUTER JOIN 和一些 WHERE 条件将达到目的:

SELECT B.idInvoice, A.idPayment, C.idNote 
FROM Invoice b
LEFT JOIN payments a ON a.idInvoice=b.idInvoice
LEFT JOIN PromissoryNotes c ON c.idInvoice=b.idInvoice
WHERE a.idInvoice IS NOT NULL
OR c.idInvoice IS NOT NULL
ORDER BY B.idInvoice

这基本上说的是给我表 B 的所有结果,其中表 a 或表 c 中有匹配项。

关于mysql - 加入三个表 - Mysql 一个内部和外部连接也许?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25452509/

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