sql server T_SQL help
合同里产品行会有很多个版本,每一个版本会有很多个产品行, 比如第一个版本产品3行,二版5行,三版6行,
逻辑运算:第一版的效果列difference 永远等于原始Totalamount列,当VersionNo为2的时候,就会与第一版的去比较, 条件为Sequence相等,
也就是说第二版的第一行产品金额与第一版的第一行产品金额比较 得出 50-100 = -50,如果当前版本的行无法匹配上版本行就等于当前版本产品行的金额
第二版产品行4无法匹配出第一版产品行4,就等于二版产品行金额为700.
注意:已知某个版本的产品行有268行,非常感谢各位的帮助 ~
--原始数据
---第一版
ContractID VersionNo ProductCode Sequence Totalamount
CS180195 1 42CN00530CALB 1 100
CS180195 1 4242CN00530CARB 2 200
CS180195 1 424230RQ130ACCSETBHS 3 300
---第二版
CS180198 2 424230RQ130ACCSETBHS 1 50
CS180198 2 424230RQ130ACCSETBH1 2 500
CS180198 2 424230RQ130ACCSETBH2 3 600
CS180198 2 424230RQ130ACCSETBH3 4 700
CS180198 2 424230RQ130ACCSETBH4 5 800
---第二版
CS180363 3 424230RQ130ACCSETBHS 1 10
CS180363 3 424230RQ130ACCSETBH1 2 400
CS180363 3 424230RQ130ACCSETBH2 3 400
CS180363 3 424230RQ130ACCSETBH3 4 400
CS180363 3 424230RQ130ACCSETBH4 5 400
CS180363 3 424230RQ130ACCSETBH4 6 400
-----------------------------
--结果
---第一版
ContractID VersionNo ProductCode Sequence Totalamount ( difference 结果&效果列)
CS180195 1 42CN00530CALB 1 100 100
CS180195 1 4242CN00530CARB 2 200 200
CS180195 1 424230RQ130ACCSETBHS 3 300 300
---第二版
CS180198 2 424230RQ130ACCSETBHS 1 50 -50
CS180198 2 424230RQ130ACCSETBH1 2 500 300
CS180198 2 424230RQ130ACCSETBH2 3 600 300
CS180198 2 424230RQ130ACCSETBH3 4 700 700
CS180198 2 424230RQ130ACCSETBH4 5 800 800
---第二版
CS180363 3 424230RQ130ACCSETBHS 1 10 -40
CS180363 3 424230RQ130ACCSETBH1 2 400 -100
CS180363 3 424230RQ130ACCSETBH2 3 400 -200
CS180363 3 424230RQ130ACCSETBH3 4 400 -300
CS180363 3 424230RQ130ACCSETBH4 5 400 -400
CS180363 3 424230RQ130ACCSETBH4 6 400 400
逻辑运算:第一版的效果列difference 永远等于原始Totalamount列,当VersionNo为2的时候,就会与第一版的去比较, 条件为Sequence相等,
也就是说第二版的第一行产品金额与第一版的第一行产品金额比较 得出 50-100 = -50,如果当前版本的行无法匹配上版本行就等于当前版本产品行的金额
第二版产品行4无法匹配出第一版产品行4,就等于二版产品行金额为700.
注意:已知某个版本的产品行有268行,非常感谢各位的帮助 ~
--原始数据
---第一版
ContractID VersionNo ProductCode Sequence Totalamount
CS180195 1 42CN00530CALB 1 100
CS180195 1 4242CN00530CARB 2 200
CS180195 1 424230RQ130ACCSETBHS 3 300
---第二版
CS180198 2 424230RQ130ACCSETBHS 1 50
CS180198 2 424230RQ130ACCSETBH1 2 500
CS180198 2 424230RQ130ACCSETBH2 3 600
CS180198 2 424230RQ130ACCSETBH3 4 700
CS180198 2 424230RQ130ACCSETBH4 5 800
---第二版
CS180363 3 424230RQ130ACCSETBHS 1 10
CS180363 3 424230RQ130ACCSETBH1 2 400
CS180363 3 424230RQ130ACCSETBH2 3 400
CS180363 3 424230RQ130ACCSETBH3 4 400
CS180363 3 424230RQ130ACCSETBH4 5 400
CS180363 3 424230RQ130ACCSETBH4 6 400
-----------------------------
--结果
---第一版
ContractID VersionNo ProductCode Sequence Totalamount ( difference 结果&效果列)
CS180195 1 42CN00530CALB 1 100 100
CS180195 1 4242CN00530CARB 2 200 200
CS180195 1 424230RQ130ACCSETBHS 3 300 300
---第二版
CS180198 2 424230RQ130ACCSETBHS 1 50 -50
CS180198 2 424230RQ130ACCSETBH1 2 500 300
CS180198 2 424230RQ130ACCSETBH2 3 600 300
CS180198 2 424230RQ130ACCSETBH3 4 700 700
CS180198 2 424230RQ130ACCSETBH4 5 800 800
---第二版
CS180363 3 424230RQ130ACCSETBHS 1 10 -40
CS180363 3 424230RQ130ACCSETBH1 2 400 -100
CS180363 3 424230RQ130ACCSETBH2 3 400 -200
CS180363 3 424230RQ130ACCSETBH3 4 400 -300
CS180363 3 424230RQ130ACCSETBH4 5 400 -400
CS180363 3 424230RQ130ACCSETBH4 6 400 400
...全文
相关推荐
SQL Help.rar_Help!_sql_sql server_sqlhelp sqlserver
本压缩包"SQL Help.rar_Help!_sql_sql server_sqlhelp sqlserver"显然是为了提供SQL Server的相关帮助文档和资源。
在SQL Server实例之间传输登录和密码
调用sp_help_revlogin,它会生成一个新的创建登录的T-SQL语句,包含正确的SID和密码信息。4. 在目标SQL Server上执行生成的T-SQL语句以创建登录。
查询表结构的sql语句
这里我们关注的是T-SQL,它是Microsoft SQL Server所使用的SQL方言。T-SQL提供了多种方法来获取表的结构信息。下面将详细介绍如何使用T-SQL查询表结构。1.
SQL-Server笔试题含答案
正确答案是sp_help,因为sp_help存储过程用于查看数据库对象的信息。5. 在SQL Server中,关于视图的说法不正确的是( )。 这个问题考察了SQL Server中的视图。
T-SQL SQL Server
**系统函数和系统存储过程**:SQL Server提供了一系列内置的系统函数和存储过程,例如sys.objects可以查看数据库对象信息,sp_help可以获取表的帮助信息。


community_281
