我目前遇到SQL Server的问题,我无法弄清楚。
错误是:
为变量赋值的SELECT语句不能与数据检索操作结合使用
SQL:
DECLARE @IdUser INT
Select
@IdUser = Id,
Username,
(Select Count(*) From GagsLikes where Userid = @IdUser And Good = 1) as GagLikes,
(Select Count(*) From GagsViews where UserID = @IdUser),
(Select Count(*) From Gags Where UserID = @IdUser) as GagViews
From
Users
Order by
GagLikes, GagViews
提前致谢!
答案 0 :(得分:2)
您可能无法使用该变量,请尝试以下操作:
Select
U.Id,
U.Username,
(Select Count(*) From GagsLikes where Userid = U.Id And Good = 1) as GagLikes,
(Select Count(*) From GagsViews where UserID = U.Id),
(Select Count(*) From Gags Where UserID = U.Id) as GagViews
From
Users AS U
Order by
GagLikes, GagViews
答案 1 :(得分:1)
您的表可能会返回多行。确保您的表只返回一行,否则它可以 t将多个id存储到一个int变量中。