我有销售线,有些是开票的,有些不是。我想添加每个订单(salesid)的发票行共享信息。我希望每个销售行的这些信息在一个订单中都相同。已开票行的销售状态 =3。这是我的尝试:
SELECT
salesid,linenum,itemid,salesstatus,name,lineamount
,(SELECT SUM(CASE WHEN salesstatus=3 THEN lineamount ELSE 0 END) as expr1) invoiced
,(SELECT SUM (lineamount) as expr2 GROUP BY salesid) total
,invoiced/total
FROM T.SALESLINES
GROUP BY
salesid,linenum,itemid,salesstatus,name,lineamount
按 salesid 分组不起作用,会出现错误“每个 GROUP BY 表达式必须包含至少一个不是外部引用的列。” 我猜代码看起来合乎逻辑但不起作用。那么我应该如何按salesid分组以除以总发票?