Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在SQL Access数据库表中查找第11个条目?_Sql_Ms Access - Fatal编程技术网

如何在SQL Access数据库表中查找第11个条目?

如何在SQL Access数据库表中查找第11个条目?,sql,ms-access,Sql,Ms Access,如何在Access SQL数据库表中找到第11个条目?我必须使用TOP函数,我的查询当前如下所示: SELECT TOP 11 Passenger.Name, SUM(Manifest.Ticketprice) AS [Total Amount Spent on Tickets] FROM Passenger INNER JOIN Manifest ON Passenger.PassengerNumber=Manifest.PassengerNumber GROUP BY Passenger.N

如何在Access SQL数据库表中找到第11个条目?我必须使用TOP函数,我的查询当前如下所示:

SELECT TOP 11 Passenger.Name, SUM(Manifest.Ticketprice) AS [Total Amount Spent on Tickets]
FROM Passenger INNER JOIN Manifest ON Passenger.PassengerNumber=Manifest.PassengerNumber
GROUP BY Passenger.Name
ORDER BY SUM(Manifest.Ticketprice) DESC;

您可以使用子查询:

SELECT TOP 1 T.Name, T.[Total Amount Spent on Tickets]
FROM

(SELECT TOP 11 Passenger.Name, SUM(Manifest.Ticketprice) AS [Total Amount Spent on Tickets]
FROM Passenger INNER JOIN Manifest ON Passenger.PassengerNumber=Manifest.PassengerNumber
GROUP BY Passenger.Name
ORDER BY SUM(Manifest.Ticketprice) DESC) As T

ORDER BY T.[Total Amount Spent on Tickets] ASC

access中没有限制关键字。我相信答案是使用嵌套的TOP查询:从SELECT TOP 11 Passenger.Name,SUMManifest.Ticketprice中选择TOP 1*,作为乘客内部连接清单中乘客的[Total Amount of Tickets],PassengerNumber=Manifest.PassengerNumber按乘客分组。Name ORDER BY SUMManifest.Ticketprice DESC;这给了我数据库中列出的第一个人,而不是第11个人是的,我认为外部的顺序应该是ASC。@Andre:应该是。更正。谢谢
SELECT TOP 1 T.Name, T.[Total Amount Spent on Tickets]
FROM

(SELECT TOP 11 Passenger.Name, SUM(Manifest.Ticketprice) AS [Total Amount Spent on Tickets]
FROM Passenger INNER JOIN Manifest ON Passenger.PassengerNumber=Manifest.PassengerNumber
GROUP BY Passenger.Name
ORDER BY SUM(Manifest.Ticketprice) DESC) As T

ORDER BY T.[Total Amount Spent on Tickets] ASC