0
,所以我有以下查询PostgreSQL的双数加入
SELECT SUM(s.price) as "totalSales",
sum(CASE
WHEN er.verified AND er.price = 1.010101 THEN s.price
WHEN er.verified AND er.price > 1.010101 THEN er.price ELSE 0 END) as "totalRet",
c.company as "client"
FROM "Esns" e
JOIN "EsnsSalesOrderItems" es on es."EsnId" = e."id"
JOIN "SalesOrderItems" s on es."SalesOrderItemId" = s.id
JOIN "SalesOrders" so on so.id = s."SalesOrderId"
JOIN "Clients" c on so."ClientId" = c.id
LEFT OUTER JOIN "EsnsRmas" er on er."EsnId" = e.id
GROUP BY c.id
但是,如果有多个在ES“EsnId”,它会计算呃多次,反之亦然。
我如何构造一切只计算一次?
因此,它不工作,因为它只会计数一个es,如果有多个。我需要发生的是它计算多个ES,但后来知道它不应该再次计数,因为它以前已经计算过了。 – user1175817 2013-02-27 20:31:48