只是好奇这是否是更新余额的最佳方式?它执行正常,但我是SQL的新手 谢谢你的任何建议......
*/
CREATE DATABASE KFF
GO
USE KFF
CREATE TABLE COA
(
Account INT NOT NULL,
Description VARCHAR(250),
Short_Description VARCHAR(250),
)
BULK INSERT COA FROM 'C:\COA-IMPORT.TXT' WITH
(
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
)
ALTER TABLE COA
ADD Balance money;
SELECT * FROM COA
use KFF
update COA SET Balance=$1000 WHERE Account=100001
update COA SET Balance=$2000 WHERE Account=100002
update COA SET Balance=$3000 WHERE Account=100003
update COA SET Balance=$4000 WHERE Account=100010
update COA SET Balance=$5000 WHERE Account=100011
update COA SET Balance=$6000 WHERE Account=100012
update COA SET Balance=$7000 WHERE Account=100020
update COA SET Balance=$8000 WHERE Account=100021
答案 0 :(得分:0)
我不得不说,这可能不是最好的方式。
您能否就业务领域提供更全面的问题陈述?
我可以看到您从某个地方导入了一个以CSV格式提供的会计科目表。
不知何故,您的脚本知道应该分配给帐户的余额,但我不清楚这些额外信息的真正来源。
如果您有另一个包含余额(余额)的表格,似乎不需要为导入的数据添加列,您可以在导入会计科目表后简单地合并数据(可能是为了获得最新名字):
SELECT *
FROM Balances
INNER JOIN COA
ON COA.Account = Balances.Account
或者(如果您不确定两边是否可以丢失物品):
SELECT *
FROM Balances
FULL OUTER JOIN COA
ON COA.Account = Balances.Account