sql - 如何将sql数据库中的一个值拆分为两行
问题描述
如何从sql数据库中拆分一个值并分成两行(一行设置1000000,一行是余额)其他小于1000000.或任何使用coldfusion的想法。提前致谢。
例子
No. Code Name Account No Total
1 123 black 123456789 160000.00
2 124 red 111111222 5200.00
3 124 blue 444555666 121000.00
我想要这个结果
No. Code Name Account No Total
1 123 black 123456789 100000.00
2 123 black 123456789 60000.00
3 124 red 111111222 5200.00
4 124 blue 444555666 100000.00
5 124 blue 444555666 21000.00
解决方案
首先,您需要插入一个新行:
INSERT INTO TABLE (CODE, NAME, ACCOUNT_NO, TOTAL)
SELECT
CODE,
NAME,
ACCOUNT_NO,
TOTAL MOD 100000 AS NEW_TOTAL
FROM TABLE
WHERE TOTAL > 100000;
该命令将插入第二行。现在您需要修复第一行。
UPDATE TABLE
SET TOTAL = TOTAL - (TOTAL MOD 100000)
WHERE TOTAL > 100000;
推荐阅读
- php - FK 引用多个表。Laravel 中的数据库关系和外键约束
- python - 为多种环境设置气流
- android - 布尔值未出现在 Firestore 对象中
- react-native - 如何在 React Native 中获取歌曲的缩略图?
- assembly - 在ARM Assembly中将整数转换为十六进制字符串
- java - kotlin 中的 java 代码 SomeActivity.this 的等价物是什么?
- excel - Excel、MINIF/MAXIF 公式
- html - 如何添加新项目以实现 CSS 集合?
- tableau-api - 如何在 Tableau 中对 2 列求和并在第三列中显示?
- javascript - 在 Firefox 中,如何停止 jQuery 滑块并检查其内容?