1
我有兩個表XY和上面。我試圖使用MS ACCESS和SQL來連接這些表格(在wid上),但只保留每個XY.wid的最大Tops.Depth_Top小於XY.TVD。 我對SQL相當陌生,但做了以下兩個查詢。第一個標識高於閾值的所有數據(Depth_Tops < = TVD)。SQL加入表和查找最大值
SELECT DISTINCT XY.wid, Tops.Name, Tops.Depth_Top, XY.TVD
INTO Result_SQ
FROM Tops
INNER JOIN XY
ON Tops.wid = XY.wid
WHERE (((Tops.Depth_Top)<=[XY].[TVD]))
ORDER BY XY.wid, Tops.Depth_Top
第二個查詢從第一個查詢獲得結果,並且只保留最大Depth_Top。
SELECT * INTO Unique_Result_SQ
FROM Result_SQ AS t1
WHERE (((t1.Depth_Top)=(Select MAX(Depth_Top)
From Result_SQ t2
Where t2.XY_wid = t1.XY_wid
Group BY t2.XY_wid)));
這些查詢達到預期的效果,如果兩者都獨立執行,但是,我有兩者結合成一個麻煩。
感謝您的答案。該代碼返回與我的第一個查詢相同的結果。 不確定是否這是原因,但wid和Name是相互獨立的。 http://imgur.com/a/EFlvN 我想刪除突出顯示的行以及底部兩行。 –
所以你只想要返回一行? – morinx
在這個例子中它將是兩行(wid 0和1)。原始表格的深度均小於或大於TVD。我只想保留每個wid的最大深度小於TVD的信息。 –