Files
GateDge2023_ljy/07.珠海英搏尔/Enpower/PRD_MO/SQLserver/查询语句.sql

117 lines
4.7 KiB
MySQL
Raw Normal View History

2024-03-28 11:30:14 +08:00
--<EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯstart--
SELECT
--TOP 5000
t0.FID
,t0.FBILLNO
,t0.FBOMID
,t0.FMATERIALID --<EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>id
,t0_b.FSALEORDERID --<EFBFBD><EFBFBD><EFBFBD>󵥺<EFBFBD>id
,t0_b.FSALEORDERENTRYID --<EFBFBD><EFBFBD><EFBFBD>󵥺ű<EFBFBD><EFBFBD><EFBFBD>id
,t0_b.FSALEORDERENTRYSEQ --<EFBFBD><EFBFBD><EFBFBD>󵥺ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD>к<EFBFBD>
,t0.F_Linenumber 'Ԥ<EFBFBD><EFBFBD>к<EFBFBD>#'
,t0_b.FSALEORDERNO '<EFBFBD><EFBFBD><EFBFBD>󵥺<EFBFBD>'--<EFBFBD><EFBFBD><EFBFBD>󵥺<EFBFBD>
,t1.FBILLNO 'Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,t0.F_FORECASTNUMBER 'Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>#'
,t1e.FCUSTID
,t0.F_CUSTOMERNAME
,t1e.FMATERIALID AS F_MATERIALCODE --Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>id
,t0.F_MATERIALCODE
,t0.F_SOURCE_ORDER_LINE_NUMBER
,t1e.F_SOURCE_ORDER_LINE_NUMBER --<EFBFBD><EFBFBD><EFBFBD>۶<EFBFBD><EFBFBD><EFBFBD><EFBFBD>к<EFBFBD>
,t0.F_SOURCE_ORDER_NUMBER
,t1e.F_SOURCE_ORDER_NUMBER --<EFBFBD><EFBFBD><EFBFBD>۶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>#
,ISNULL(t1_l.FDESCRIPTION,'') AS F_DESCRIPTION --<EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD>ע
,t0_l.F_DESCRIPTION
,ISNULL(t1e_l.FDESCRIPTION,'') AS F_REMARK --<EFBFBD><EFBFBD><EFBFBD>ע
,t0.F_REMARK
FROM
T_PLN_PLANORDER t0
INNER JOIN T_PLN_PLANORDER_B t0_b on t0.FID = t0_b.FID
INNER JOIN T_PLN_PLANORDER_L t0_l on t0.FID = t0_l.FID
INNER JOIN T_PLN_FORECAST t1 on t0_b.FSALEORDERID = t1.FID --Ԥ<EFBFBD>
LEFT JOIN T_PLN_FORECAST_L t1_l on t1_l.FID = t0_b.FSALEORDERID --Ԥ<EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD>Ϣ
INNER JOIN T_PLN_FORECASTENTRY t1e on t1e.FID = t0_b.FSALEORDERID AND t0_b.FSALEORDERENTRYID = t1e.FENTRYID --Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
LEFT JOIN T_PLN_FORECASTENTRY_L t1e_l on t1e_l.FENTRYID = t0_b.FSALEORDERENTRYID --Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD>Ϣ
--INNER JOIN T_PLN_RESERVELINKENTRY B ON B.FSUPPLYBILLNO = t0.FBILLNO
--INNER JOIN T_PLN_RESERVELINK C ON C.FID=B.FID --Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ
--INNER JOIN T_PLN_FORECASTENTRY D ON D.FENTRYID=C.FSRCENTRYID
--INNER JOIN T_PLN_FORECAST E ON E .FID=D.FID
WHERE 1 = 1
AND t0.F_FORECASTNUMBER = ''
AND t0_b.FDEMANDTYPE = 2
AND CONVERT(nvarchar(100),t0.FCREATEDATE,23) = '2024-01-18'
--AND t0.FCOMPUTERNO ='MRP000401'
--AND t0_b.FSALEORDERID = 0
--ORDER BY t0_b.FSALEORDERID,t0_b.FSALEORDERENTRYSEQ
--<EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯend--
--<EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯstart--
SELECT A.FID
into #temp
FROM T_PLN_PLANORDER A
INNER JOIN T_PLN_RESERVELINKENTRY B ON B.FSUPPLYBILLNO = A.FBILLNO
INNER JOIN T_PLN_RESERVELINK C ON C.FID=B.FID
INNER JOIN T_PLN_FORECASTENTRY D ON D.FENTRYID=C.FSRCENTRYID
INNER JOIN T_PLN_FORECAST e on e .fid=d.FID
WHERE 1=1
--AND A.F_FORECASTNUMBER=''
AND A.FCOMPUTERNO ='MRP000401'
AND CONVERT(nvarchar(100),a.FCREATEDATE,23) = '2024-01-18'
GROUP BY A.FID
HAVing count(1) > 1
CREATE INDEX [#temp_INDEX_FID] ON #temp(FID);
SELECT
t0_b.FSALEORDERID --<EFBFBD><EFBFBD><EFBFBD>󵥺<EFBFBD>id
,t0_b.FSALEORDERENTRYID --<EFBFBD><EFBFBD><EFBFBD>󵥺ű<EFBFBD><EFBFBD><EFBFBD>id
,t0_b.FSALEORDERENTRYSEQ --<EFBFBD><EFBFBD><EFBFBD>󵥺ű<EFBFBD><EFBFBD><EFBFBD><EFBFBD>к<EFBFBD>
--,t0.F_Linenumber 'Ԥ<EFBFBD><EFBFBD>к<EFBFBD>#'
,t0_b.FSALEORDERNO '<EFBFBD><EFBFBD><EFBFBD>󵥺<EFBFBD>'--<EFBFBD><EFBFBD><EFBFBD>󵥺<EFBFBD>
,t0.F_FORECASTNUMBER 'Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>#'
,d.FSEQ
,case when t0_b.FSALEORDERENTRYSEQ = d.FSEQ then 1 else 0 end
,t0.FBILLNO
--SELECt *
FROM T_PLN_PLANORDER t0
INNER JOIN T_PLN_PLANORDER_B t0_b on t0.FID = t0_b.FID
--INNER JOIN T_PLN_FORECAST t1 on t0_b.FSALEORDERID = t1.FID --Ԥ<EFBFBD>
--LEFT JOIN T_PLN_FORECAST_L t1_l on t1_l.FID = t0_b.FSALEORDERID --Ԥ<EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD>Ϣ
--INNER JOIN T_PLN_FORECASTENTRY t1e on t1e.FID = t0_b.FSALEORDERID AND t0_b.FSALEORDERENTRYID = t1e.FENTRYID --and t0_b.FSALEORDERENTRYSEQ = t1e.FSEQ--Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
INNER JOIN T_PLN_RESERVELINKENTRY B ON B.FSUPPLYBILLNO = t0.FBILLNO
INNER JOIN T_PLN_RESERVELINK C ON C.FID=B.FID
INNER JOIN T_PLN_FORECASTENTRY D ON D.FENTRYID=C.FSRCENTRYID
INNER JOIN T_PLN_FORECAST e on e .fid=d.FID
WHERE exists (SELECT 1 FROM #temp tt WHERE tt.FID = t0.FID) and (t0_b.FSALEORDERENTRYSEQ != d.FSEQ or t0_b.FSALEORDERNO != e.FBILLNO)
DROP TABLE #TEMP
--<EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯend--
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶβ<EFBFBD>ѯstart--
SELECT
a.FBILLNO AS '<EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,A.FSALENOROW
,A.F_SOURCE_ORDER_LINE_NUMBER as '<EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۶<EFBFBD><EFBFBD><EFBFBD><EFBFBD>к<EFBFBD>'
,A.F_Source_order_number as '<EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,A.F_FORECASTNUMBER as '<EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,A.F_Linenumber as '<EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD>к<EFBFBD>'
,E.FBILLNO AS 'Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,D.FSEQ,D.F_Source_order_number as 'Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>۶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,D.F_SOURCE_ORDER_LINE_NUMBER as 'Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>۶<EFBFBD><EFBFBD><EFBFBD><EFBFBD>к<EFBFBD>'
--UPDATE A SET A.F_Forecastnumber = '',A.F_Linenumber='',A.F_MaterialCode = 0,A.F_Remark = ''
SELECT A.*
FROM T_PLN_PLANORDER A
INNER JOIN T_PLN_RESERVELINKENTRY B ON B.FSUPPLYBILLNO = A.FBILLNO
INNER JOIN T_PLN_RESERVELINK C ON C.FID=B.FID
INNER JOIN T_PLN_FORECASTENTRY D ON D.FENTRYID=C.FSRCENTRYID
INNER JOIN T_PLN_FORECAST e on e .fid=d.FID
WHERE 1=1
AND A.F_FORECASTNUMBER=''
AND a.fbillno='MRP01348067'
AND CONVERT(nvarchar(100),a.FCREATEDATE,23) = '2024-01-18'
--AND A.F_Forecastnumber ='N+30000028'
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶβ<EFBFBD>ѯend--
'WO2401220106,WO2401220362,WO2401220363,WO2401220364,WO2401220365,WO2401220366,WO2401220367,WO2401220368,WO2401220369,WO2401220370,WO2401220371,WO2401220372,WO2401220373,WO2401220374,WO2401220375,WO2401220376,WO2401220377,WO2401220378'