首页 > 代码库 > 查询每个人的订单总额,多表关联

查询每个人的订单总额,多表关联

  孤狼前不久写了个存储过程,大概内容就是查询每个人的订单总额,用的是表关联,执行速度还可以。如果有哪位大神有更好的建议或者有什么疑问,欢迎能够多多指出。

  有下面两张表

  

UserInfo表

Order表

    如果要查询每个人的订单总额,方法一就是用循环,但是此方法不但复杂,而且执行速度很慢,孤狼不推荐。方法二就是本文所提的表关联了,语句如下:

SELECT ui.id,ui.Name,ISNULL(x.TotalMoney,0.0) TotalMoney FROM dbo.UserInfo  ui
LEFT JOIN
(SELECT SUM(Money) AS TotalMoney,UserId FROM [Order] GROUP BY UserId)  x ON ui.Id = x.UserId

  得到如下结果:

  孤狼现在只知道这两种方法,不过肯定也有其他的方法,等以后知道了再分享给大家,如果有知道的也希望能提出来,互相学习,互相进步。