Sql 如何从唯一id basis varchar数据类型获取值
我有以下疑问;你能帮我吗?我有comboAmount和TotalPrice,我想将TotalPrice+comboAmount添加到newComboAmount中,但它显示了一个错误的结果,因为我的ComboUniqueId与其他ComboUniqueId不同,请查看下面的图片并查询Sql 如何从唯一id basis varchar数据类型获取值,sql,sql-server,sql-server-2012,sql-server-2008-r2,Sql,Sql Server,Sql Server 2012,Sql Server 2008 R2,我有以下疑问;你能帮我吗?我有comboAmount和TotalPrice,我想将TotalPrice+comboAmount添加到newComboAmount中,但它显示了一个错误的结果,因为我的ComboUniqueId与其他ComboUniqueId不同,请查看下面的图片并查询 SELECT CAST(CASE WHEN a.TotalPrice != 0 THEN 1 ELSE 0
SELECT
CAST(CASE
WHEN a.TotalPrice != 0
THEN 1
ELSE 0
END AS bit) AS CheckOtherPrice,
a.OrderDetailId, a.ItemId,
b.ItemCode, b.ItemName,
e.GroupName,
a.Quantity, a.Price, a.TotalPrice,
a.OrderId, ISNULL(a.ComboId, 0) ComboId,
(a.ComboAmount + SUM(a.TotalPrice) OVER (ORDER BY a.OrderDetailId)) AS new_comboamount,
a.ComboGroupId, a.ComboAmount, a.ComboUniqueId,
c.ComboName, d.GroupName ComboGroupName,
a.OfferMasterId
FROM
OrderDetail a
INNER JOIN
ItemMaster b ON a.ItemId = b.ItemId AND a.OrderId IN (985)
INNER JOIN
ItemGroup e ON b.ItemGroupId = e.ItemGroupId
LEFT JOIN
ComboMaster c ON a.ComboId = c.ComboId
LEFT JOIN
ComboGroup d ON a.ComboGroupId = d.GroupId
我想你只需要一个
分区:
( a.ComboAmount + sum(a.TotalPrice) over (partition by combouniqueid order by a.OrderDetailId) ) as new_comboamount
我想你只需要一个分区:
( a.ComboAmount + sum(a.TotalPrice) over (partition by combouniqueid order by a.OrderDetailId) ) as new_comboamount