2017-07-24 71 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 
相关问题