我想从表(ASC)中选择最后25条记录,但是我想在excel表DESC中显示它们(因此,这25条记录中的最后一条将在表中排在第一位)。我已经创建了SQL查询,但VBA宏表示查询在关键字“ ORDER”附近的语法不正确
任何建议如何继续?我使用SQL Server和Excel VBA宏
SQLStr = "(SELECT TOP 25 lot, na FROM ImportantProcessParameters WHERE product = 'Pt Nitrate' AND lot IS NOT NULL AND na IS NOT NULL ORDER BY lot ASC) ORDER BY lot DESC;"
答案 0 :(得分:0)
尝试一下:
SQLStr = "select i.lot, i.na
from
(SELECT TOP 25 lot, na
FROM ImportantProcessParameters
WHERE product = 'Pt Nitrate' AND lot IS NOT NULL AND na IS NOT NULL
ORDER BY lot ASC) as i
ORDER BY i.lot DESC;
答案 1 :(得分:0)
我想从表(ASC)中选择最后25条记录
SELECT TOP 25 lot, na FROM ImportantProcessParameters WHERE product = 'Pt Nitrate' AND lot IS NOT NULL AND na IS NOT NULL ORDER BY lot;
但是我想在excel表DESC中显示它们(所以最后一个 这25个将排在表格的首位
您应将结果包装到如下所示的子表中
SQLStr = "SELECT *
FROM (SELECT TOP 25 lot, na
FROM ImportantProcessParameters
WHERE product = 'Pt Nitrate' AND lot IS NOT NULL AND na IS NOT NULL ORDER BY lot)
ORDER BY lot DESC"
答案 2 :(得分:0)
检查以下查询
select X.lot, X.na
from
(SELECT TOP 25 lot, na
FROM ImportantProcessParameters
WHERE product = 'Pt Nitrate' AND lot IS NOT NULL AND na IS NOT NULL
ORDER BY lot ASC) as X
ORDER BY X.lot DESC;