gpt4 book ai didi

sql-server - 如何使用Insert Into在Sql Server中减去负小数

转载 作者:行者123 更新时间:2023-12-04 06:09:45 24 4
gpt4 key购买 nike

我正在尝试编写一个查询来跟踪 2 个表中十进制值的历史记录。

表格1

PK  Num1   D1        D2
1 1 -0.00375 -0.005
2 1 -0.00325

表2
PK   Num1   D1        D2
1 1 -0.00375 -0.0025
2 2 -0.005

表 3(历史表)
Num1  OldD2     NewD2     D2Difference
1 -0.005 -0.0025 0.0000//This is where I am having trouble

我的查询将添加 2 个 D2 值但不会减去。它总是返回 0.00
这是我的查询。
BEGIN TRANSACTION
INSERT INTO Table3
SELECT Table1.Num1, Table1.D2, Table2.D2, (Table1.D2 - Table2.D2)
FROM Table1
INNER JOIN Table2 ON Table1.Num1 = Table2.Num1 AND Table1.D1 = Table2.D1
COMMIT

同样,我可以添加到 2 个小数,但减去总是返回 0.00。我知道我错过了穿过森林的树木(或者相反?)。

注意:所有小数都是 (5,5),连接是表 1 和表 2 的结果,每个 Num1 都有唯一的 D1 值。

最佳答案

由于您只选择在两个表中相等的 D1 - 减法运算将返回 0.00

只需删除 JOIN 条件 AND Table1.D1 = Table2.D1
编辑:笔记

由于问题已更改,我的答案并不明显,因为初始 sql 查询已更改

关于sql-server - 如何使用Insert Into在Sql Server中减去负小数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7907636/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com