2016-11-18 17 views
0

から1つのトップの数値IDを取得:どのように私はこのコードを持っているテーブルと日付

SELECT TYPE, BASE_ID, PART_ID, CREATE_DATE 
FROM WORK_ORDER 
WHERE CREATE_DATE >'17-NOV-2016' AND WAREHOUSE_ID ='MEX-04' 

をし、それが結果として得られます。 enter image description here

私は一つだけpart_idあたりbase_idのを持っていると思います

+1

どのRDBMSを使用していますか?また、どのbase_idを選択すればよいのでしょうか? – Nicarus

答えて

0

これを試してください。あなたの説明からこれを仮定してください。あなたの新しいクエリに基づいて更新

SELECT TYPE, Max(BASE_ID) BASE_ID, PART_ID, CREATE_DATE 
FROM WORK_ORDER 
WHERE CREATE_DATE >'17-NOV-2016' AND WAREHOUSE_ID ='MEX-04' 
Group By Type, Part_ID, Create_Date 

...これを試してみてください。 SQL Serverを想定します。

SELECT PART.ID ,PART.USER_10 ,PART.USER_1 ,WORK_ORDER.STATUS 
,SUM (CASE when (OPERATION.RESOURCE_ID = '121-ADD') THEN OPERATION.RUN ELSE 0 END) "121-ADD" 
FROM PART 
JOIN WORK_ORDER ON PART.ID = WORK_ORDER.PART_ID 
JOIN OPERATION ON WORK_ORDER.PART_ID = OPERATION.WORKORDER_BASE_ID 
Where 
OPERATION.WORKORDER_TYPE ='M' 
AND --(NewCode here) 
OPERATION.RUN >0 AND WORK_ORDER.WAREHOUSE_ID ='MEX-04' 
AND WORK_ORDER.TYPE ='W' AND PART.FABRICATED ='Y' 
AND WORK_ORDER.CREATE_DATE >'17-NOV-2016' 
GROUP BY PART.ID ,PART.USER_10 ,PART.USER_1 ,WORK_ORDER.STATUS 
+0

WEI_DBAありがとうございました。これで私たちの問題は解決しました。 – user2180525

+0

WEI、私のコードにこのコードを追加しようとすると、思ったとおりに動作しません。あなたはそれを見てみることができますか? – user2180525

+0

PART.ID、PART.USER_10 、PART.USER_1 、WORK_ORDER.STATUS 、「121-ADD SUM((OPERATION.RESOURCE_IDは= '121-ADD')THEN OPERATION.RUN ELSE 0 END CASE)を選択「 FROM PART、WORK_ORDER、OPERATION WORK_ORDER.PART_ID = OPERATION.WORKORDER_BASE_ID AND OPERATION.WORKORDER_TYPE = 'M' とPART.ID = WORK_ORDER.PART_ID - (ここではNewCode) とOPERATION.RUN> 0 AND WORK_ORDER.WAREHOUSE_ID = 'MEX-04' AND WORK_ORDER.TYPE = 'W' AND PART.FABRICATED = 'Y' AND WORK_ORDER.CREATE_DA TE> '17 -NOV-2016' あなたは結果を取得している何 PART.ID 、PART.USER_10 、PART.USER_1 、WORK_ORDER.STATUS – user2180525

関連する問題