【发布时间】:2015-03-15 21:29:24
【问题描述】:
我有这个代码:
select top 3
w.firstName,
w.lastName,
w.fbId,
w.idNumber,
w.address,
w.phoneNumber,
q.userId,
c.codeVal,
q.bidedItem,
SUM(q.bidCount) as sumOfBids,
sum(w.codesLeft + q.bidCount) as allCode
from
geopl_kubetiAuct.firstWeekBids as q
join
geopl_kubetiAuct.Users w on q.userId = w.Id
join
geopl_kubetiAuct.Code c on c.userId = q.userId
where
q.bidedItem = 'GalaxyTabs'
group by
w.firstName, w.lastName, w.fbId, w.idNumber,
w.address, w.phoneNumber, q.bidedItem, q.userId, c.codeVal
order by
sumOfBids desc
它可以工作并选择所有内容OK,但有一个问题。我希望它从geopl_kubetiAuct.Code 中选择所有代码。
当我执行join geopl_kubetiAuct.Code c on c.userId = q.userId 时,它只检索第一个代码。如何选择代码列表?
【问题讨论】:
-
它应该为该 userId 的代码表中的每个代码检索一个记录...你是什么意思它只检索第一个代码?
-
@GB 我希望它检索 List
或类似的东西 -
您是说不是每个代码都有单独的行,而是希望该用户的所有代码返回并显示在单行中?
-
类似的东西。没有一行我只想检索这些值的列表
-
您能否展示您获得的数据与您想要的数据?因为我无法理解你的要求。您是否要求每个用户对每个代码都有一行,无论它是否存在?如果你能提供一个你得到的输出和你想要得到的输出的例子,帮助你会容易得多。
标签: sql sql-server sql-server-2008 tsql sql-server-2008-r2