表PRDT
PRD_NO NAME
A 烟缸表DEPT
DEP NAME
10 生产部表PRDT1
WH PRD_NO QTY
01 B 0
01 C 10表MF_MO
MO_NO PRD_NO DEP
MO20100001 A 10表TF_MO
MO_NO PRD_NO WH QTY_RSV
MO20100001 B 01 5
MO20100001 C 01 5
表MF_MO和表TF_MO通过MO_NO关联。
这里我想达到的效果是,当表TF_MO的MO_NO等于MF_MO的MO_NO,并且表TF_MO内B和C二个信息在表PRDT1内在WH和PRD_NO相等,且QTY_RSV*0.3的结果大于等于表PRDT1内的QTY时,就显示出表MF_MO内的相关信息,以下是我写的不知道哪里有问题,还请大家帮忙看看。SELECT H.MO_DD 下单日期, H.MO_NO 制令单号, H.MRP_NO 生产产品, A.NAME 产品名称,
A.UT 单位, H.QTY 生产数量, H.STA_DD 预开工日, H.END_DD 预完工日, C.NAME 生产组别 FROM MF_MO H, PRDT A, DEPT C
WHERE H.MRP_NO=A.PRD_NO AND H.DEP=C.DEP AND NOT EXISTS
(SELECT TOP 1 B.PRD_NO FROM TF_MO B ,PRDT1 G
WHERE B.MO_NO=H.MO_NO AND B.WH=G.WH AND B.PRD_NO=G.PRD_NO AND G.QTY<(B.QTY_RSV*0.3) )
PRD_NO NAME
A 烟缸表DEPT
DEP NAME
10 生产部表PRDT1
WH PRD_NO QTY
01 B 0
01 C 10表MF_MO
MO_NO PRD_NO DEP
MO20100001 A 10表TF_MO
MO_NO PRD_NO WH QTY_RSV
MO20100001 B 01 5
MO20100001 C 01 5
表MF_MO和表TF_MO通过MO_NO关联。
这里我想达到的效果是,当表TF_MO的MO_NO等于MF_MO的MO_NO,并且表TF_MO内B和C二个信息在表PRDT1内在WH和PRD_NO相等,且QTY_RSV*0.3的结果大于等于表PRDT1内的QTY时,就显示出表MF_MO内的相关信息,以下是我写的不知道哪里有问题,还请大家帮忙看看。SELECT H.MO_DD 下单日期, H.MO_NO 制令单号, H.MRP_NO 生产产品, A.NAME 产品名称,
A.UT 单位, H.QTY 生产数量, H.STA_DD 预开工日, H.END_DD 预完工日, C.NAME 生产组别 FROM MF_MO H, PRDT A, DEPT C
WHERE H.MRP_NO=A.PRD_NO AND H.DEP=C.DEP AND NOT EXISTS
(SELECT TOP 1 B.PRD_NO FROM TF_MO B ,PRDT1 G
WHERE B.MO_NO=H.MO_NO AND B.WH=G.WH AND B.PRD_NO=G.PRD_NO AND G.QTY<(B.QTY_RSV*0.3) )
join PRDT1 c on c.WH=b.WH and b.PRD_NO=c.PRD_NO --TF_MO内B和C二个信息在表PRDT1内在WH和PRD_NO相等
where QTY_RSV*0.3>c.QTY这样可以不。觉得已经达到你的意思 了
join PRDT1 c on c.WH=b.WH and b.PRD_NO=c.PRD_NO --TF_MO内B和C二个信息在表PRDT1内在WH和PRD_NO相等
where QTY_RSV*0.3>=c.QTY
A.UT 单位, H.QTY 生产数量, H.STA_DD 预开工日, H.END_DD 预完工日, C.NAME 生产组别 FROM MF_MO H, PRDT A, DEPT C
WHERE H.MRP_NO=A.PRD_NO AND H.DEP=C.DEP
AND NOT EXISTS
(SELECT 1 FROM PRDT1 G WHERE B.WH=G.WH AND B.PRD_NO=G.PRD_NO AND G.QTY<(B.QTY_RSV*0.3))