我有一个表事务,其中的列 (id, amount) 都是正整数,我有另一个表退款,其中的列是相同的,但这里的金额预计为负数。
现在我想使用 Insert into 命令从交易中选择并插入退款。如何在插入时使金额为负。以下是我正在尝试的查询。

INSERT INTO refund (id,amount)
SELECT id, amount FROM `transaction`

有什么办法refund.amount 默认总是采用-ve 值。

最佳答案

INSERT INTO refund (id,amount)
SELECT id, (0 - amount) as amount FROM `transaction`

因为 transaction 中的所有数据都是正数。
INSERT INTO refund (id,amount)
SELECT id, (-1 * amount) as amount FROM `transaction`

关于Mysql:如何在插入时将正值转换为负值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31965816/

10-14 14:01