我被这个查询困住了,我无法解决它。我在加入表格时需要帮助。
我有 4 个表(客户、产品、状态和报价)。
我想根据客户 ID 从这些表中读取数据。
在前 3 个表中,针对客户 ID 的记录数为 1,但报价表可能有多个客户行。
我想从每个客户的报价表中读取最新行。我无法查询这种情况。
例如
Customer have columns (cID, Name, Surname)
STATUS (sID, cID, Status, Sdate)
ADDRESS (adID, cID, Addetail)
Offer (ID, cID, offer, offDate)
这是我的查询,它不起作用:
SELECT c.ID,
c.NAME,
c.SURNAME,
st.ID,
st.Status,
st.Sdate
ad.Addetial,
off.OffDATE
FROM customer c, address ad, status st, offer of
WHERE
c.ID=ad.cID
AND c.ID=st.cID
AND c.ID = off.cID
..
我很困惑如何将选择限制为报价表中的一行。因为如果我输入 c.ID = off.cID 那么它将返回所有我不想要的报价。
PS:我知道有类似的问题,但我无法根据我的情况进行映射。使用 Max,只返回一行(即使有很多客户)。