我想用条件写选择从哪一行复制到另一行的值-该条件将由TRANSACTIONTYPE决定。 每个订单ID的每一行都应具有TRANSACTIONTYPE = 1的值
我的示例表
ID TRANSACTIONTYPE ORDERID VALUE
1 1 XXX 100
2 2 XXX 120
3 4 XXX 140
4 2 XXX 120
5 1 YYY 500
6 2 YYY 400
我在某些陈述中的期望:
ID TRANSACTIONTYPE ORDERID VALUE
1 1 XXX 100
2 2 XXX 100
3 4 XXX 100
4 2 XXX 100
5 1 YYY 500
6 2 YYY 500
我尝试为此编写相同的选择语句,但失败了
答案 0 :(得分:1)
您可以使用窗口功能:
string[] doubleArray = Regex
.Split(strValue, @"[^0-9\.]+")
.Where(c => c != "." && c.Trim() != "")
.ToArray(); // here i have used toarray
var doubleArray = Regex
.Split(strValue, @"[^0-9\.]+")
.Where(c => c != "." && c.Trim() != ""); // and here i have used var
如果您正在考虑更新值,那么我将挑战数据模型。在这种情况下,该值可能应该存储在定义了select t.*,
max(case when transactiontype = 1 then value end) over (partition by orderid) as new_value
from t;
的{{1}}表中。