2013-04-04 26 views
-1

需要幫助以下Oracle SQL的查詢轉換成T-SQL查詢需要幫忙翻譯這的Oracle SQL進入T-SQL

SELECT rh.user_name, rh.report_name, rh.report_run_date 
FROM report_history rh, 
    (SELECT max(report_run_date) as maxdate, report_name 
    FROM report_history 
    GROUP BY report_name) maxresults 
WHERE rh.report_name = maxresults.report_name 
AND rh.report_run_date= maxresults.maxdate; 
+3

你嘗試過什麼?在MSSQL中運行此查詢時會得到什麼錯誤? – shahkalpesh 2013-04-04 14:59:18

+4

這應該按照原樣運行 - 它看起來好像沒有使用Oracle特定的功能。 – 2013-04-04 15:01:18

+0

也許這個問題應該題爲「從舊學校轉換到新學校的SQL」? – Sepster 2013-04-04 15:10:52

回答

2

嘗試:

SELECT 
    rh.user_name, 
    rh.report_name, 
    rh.report_run_date 

FROM 
    report_history rh 

    INNER JOIN 
    (
    SELECT 
     max(report_run_date) as maxdate, 
     report_name 
    FROM 
     report_history 
    GROUP BY 
     report_name 

) maxresults 
    ON rh.report_name = maxresults.report_name 
    AND rh.report_run_date= maxresults.maxdate;