我正在尝试修改我创建的Microsoft Query中的当前SQL代码,以返回在井上执行的最新生产测试。现在,对于[井参数=井#1],下面的查询返回从[日期参数= 01/01/08]到现在的任何井的测试列表。另外,为了获得我需要的所有数据,我必须加入两个表,一个是井名,一个是生产数据,两个都包含一个我加入的唯一井#。
SELECT
P.TEST_DT, P.BOPD, P.BWPD, P.MCFD
FROM
WELL_TABLE C, PRODTEST_TABLE P
WHERE
C.UNIQUE_WELL_ID = P.UNIQUE_WELL_ID
AND ((C.WELL_NAME=?)
AND (P.TEST_DT>=?))
ORDER BY P.TEST_DT DESC
现在我的表看起来像这样:
TEST_DT P.BOPD P.BWPD P.MCFD 9/23/2012 23 125 0 8/23/2010 21 137 0 7/15/2009 29 123 0
我想回到最近的测试:
TEST_DT P.BOPD P.BWPD P.MCFD 9/23/2012 23 125 0
任何帮助将不胜感激...... 我尝试过使用max(TEST_DT)但是没有成功。
答案 0 :(得分:0)
SELECT tab.*
FROM (SELECT P.TEST_DT, P.BOPD, P.BWPD, P.MCFD
FROM WELL_TABLE C, PRODTEST_TABLE P
WHERE C.UNIQUE_WELL_ID = P.UNIQUE_WELL_ID
AND C.WELL_NAME=?
ORDER BY P.TEST_DT DESC) tab
WHERE ROWNUM=1;