2017-07-24 70 views
2

我想獲得最新的40條記錄到一個臨時表中,這樣的事情:如何將最新的40條記錄選入臨時表中?

SELECT * INTO #MY_TEMP 
FROM 
    (
    SELECT TOP 40 * 
    FROM SOME_TABLE 
    ORDER BY RECORD_DATE DESC 
) 

但是我得到一個錯誤: 一個BY子句順序沒有派生表允許的。

我看到了其他貼子上提到的一些解決方法,涉及TOP PERCENT,但我的選擇已經使用TOP並且不起作用。

如何將這些記錄存入我的臨時表中?

回答

2

在subselect語句中不能使用ORDER BY。相反,刪除子選擇。你的SQL應該看起來像這樣:

SELECT TOP 40 * INTO #MY_TEMP 
FROM SOME_TABLE 
ORDER BY RECORD_DATE DESC 
相關問題