【发布时间】:2016-02-12 12:51:13
【问题描述】:
我有两张桌子:
表一
NumLig - CodPro - CodDer
901 - BSFX30 - 0140I18
898 - RSFX30 - 18
6 - MFLX - U
表二
NumLig - CodCmp - DerCmp - QtdUti - PerCmp
6 - MDFIB0008 - null - 1 - 2
6 - MDQDN0009 - null - 0,24 - 1
898 - MFLX - U - 0,942 - 2
898 - MDCAM0002 - 0,05 - 0
901 - RSFX - 18 - 1 - 2,5
901 - EDEAD0005 - 0,245 - 0
我需要的是搜索 BSFX30 - 0140I18 输出为:
MDFIB0008 - null - 1 - 2
MDQDN0009 - null - 0,24 - 1
MFLX - U - 0,942 - 2
MDCAM0002 - 0,05 - 0
RSFX - 18 - 1 - 2,5
EDEAD0005 - 0,245 - 0
如果我这样做:
SELECT E622SIM.CodPro, E622SIM.CodDer, E622DER.TipCpc, E622SIM.NumLig, E622DER.CodCmp, E622DER.DerCmp, E622DER.QtdUti, E622DER.PerCmp
FROM E622SIM
JOIN E622DER
ON E622SIM.NumLig = E622DER.NumLig
输出是所有数据,但我需要通过 CodPro 和 CodDer 过滤。如果我这样做:
SELECT E622SIM.CodPro, E622SIM.CodDer, E622DER.TipCpc, E622SIM.NumLig, E622DER.CodCmp, E622DER.DerCmp, E622DER.QtdUti, E622DER.PerCmp
FROM E622SIM
JOIN E622DER
ON E622SIM.NumLig = E622DER.NumLig
输出为:
RSFX - 18 - 1 - 2,5
EDEAD0005 - 0,245 - 0
但我需要:
MDFIB0008 - null - 1 - 2
MDQDN0009 - null - 0,24 - 1
MFLX - U - 0,942 - 2
MDCAM0002 - 0,05 - 0
RSFX - 18 - 1 - 2,5
EDEAD0005 - 0,245 - 0
这是因为 RSFX 是 BSFX30 的子代,而 MFLX 是 RSFX 的子代
谢谢!
【问题讨论】:
-
你没有给我们任何工作。我们看到数据,是的。我们看不到它们之间的关系。
-
从table_two中选择CodCmp、DerCmp、QtdUti、PerCmp;
-
什么是“递归”?请编辑您的问题并添加有关您要完成的工作的更多详细信息。另外,请发布您已经编写的代码。谢谢。
-
我编辑了问题试图解释。