我的第一个存储过程(在sql-server中)。我无法使其发挥作用,它在a.Id中发出警告 阅读之后,并不是很了解,我甚至不确定我是否可以在存储过程中使用此内连接。
select top 1 b.*, a.*
FROM Bids b
INNER JOIN Auctions a
ON b.Auction_Id = a.Id
(NOLOCK) WHERE ( a.Ends IS NOT NULL AND a.Starts IS NOT NULL AND a.Starts < @Now AND a.Ends > @Now)
ORDER BY b.CreationTime DESC
实际上,我只需要b。*但我想我必须检索所有字段?。
由于
答案 0 :(得分:1)
将锁定提示更改为:
INNER JOIN Auctions a WITH(NOLOCK)
完整查询将是:
select top 1 b.*, a.*
FROM Bids b
JOIN Auctions a WITH(NOLOCK) ON b.Auction_Id = a.Id
WHERE ( a.Ends IS NOT NULL
AND a.Starts IS NOT NULL
AND a.Starts < @Now
AND a.Ends > @Now)
ORDER BY b.CreationTime DESC
答案 1 :(得分:1)
取出(Nolock)
,如果需要,可将其放在表名后面。
您可以使用Select
从查询中的任何表格中选择所需的任何字段。