问题1
select a.Accounts, a.erjidaili, o.ticheng2, o.Accounts AS Expr1, SUM(o.ticheng2) AS fandian2 from
QPTreasureDB.dbo.OnLineOrder o,QPAccountsDB.dbo.AccountsInfo a where o.OrderStatus='2' and o.Accounts=a.Accounts and a.erjidaili='test100'
GROUP BY a.Accounts, a.erjidaili, o.ticheng2, o.Accounts
上面这条sql语句 我用到了SUM函数 但是得到的结果跟我想要的不一样 我想要的结果是 统计符合条件的数据
但是这个条语句是把符合条件的筛选出来了 并没有统计 如下图所示
问题2
表一:userid cid
表二 userid cid cname wid
表三 wid wname
我想表一和表二的数据关联起来查询 并且 表二和表三的也关联起来
现在用的是 表一.userid= 表二.userid and 表二的wid=表三.wid
这样的话 表三有5条数据 只能提取出5条 我是想把表一和表二有多少条数据提多少条数据 并且把表三符合条件的数据也提取出来
------解决方案--------------------
第一个问题,因为你group by了4个字段,而这4个字段何在一起,就是单独的一行,所以其实是sum了,但是都是每行sum,这里可能需要改成子查询先sum然后带出其他字段
------解决方案--------------------
不知道你要查什么,你看看是不是你想要的
SELECT Accounts ,
erjidaili ,
o.ticheng2 ,
Expr1 ,
fandian2
FROM ( SELECT a.Accounts ,
a.erjidaili ,
--o.ticheng2 ,
o.Accounts AS Expr1 ,
SUM(o.ticheng2) AS fandian2
FROM QPTreasureDB.dbo.OnLineOrder o ,
QPAccountsDB.dbo.AccountsInfo a
WHERE o.OrderStatus = '2'
AND o.Accounts = a.Accounts
AND a.erjidaili = 'test100'
GROUP BY a.Accounts ,
a.erjidaili ,
--o.ticheng2 ,
o.Accounts
) a
INNER JOIN QPTreasureDB.dbo.OnLineOrder o ON o.Accounts = a.Accounts