SQL Server中的TOP子句返回的记录多于指定的记录

时间:2017-10-06 15:41:16

标签: sql-server

SQL服务器中的

TOP 子句(我在w3schools.com网站上试过这个)提供的记录多于 order by 子句时指定的记录。这是我使用的查询:

 select TOP 1 * from orders left join customers on 
 orders.customerID=customers.customerID order by EmployeeID desc

请访问此链接以获取我的结果:https://i.stack.imgur.com/xg7sV.jpg

相反,此查询返回6条记录。这是应该如何工作的吗?

3 个答案:

答案 0 :(得分:1)

阅读整个屏幕。显然,他们的网站存在严重错误。

enter image description here

答案 1 :(得分:0)

JOIN部分会让你失望。尝试这样的事情:

select TOP 1 * from orders a
outer apply (select top 1 * from customers where customerID = a.customerID) b
order by a.EmployeeID desc

答案 2 :(得分:0)

尝试按名称,地址,按订单日期或任何不像EmployeeID那样REPEAT的顺序排序查询。 Souns就像一个非常愚蠢的解决方案,但它在一个带有DESC计数的Access数据库中为我工作。

看起来如果在订单中重复值sql返回超过需要...我真的不知道为什么但它对我有用!

试试吧!