Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 测试数据更新_Sql_Sql Server - Fatal编程技术网

Sql 测试数据更新

Sql 测试数据更新,sql,sql-server,Sql,Sql Server,只是好奇这是否是更新余额的最佳方式?它执行得很好,但我不熟悉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 = ',',

只是好奇这是否是更新余额的最佳方式?它执行得很好,但我不熟悉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

我不得不说不,这可能不是最好的办法

你能提供一份关于你在商业领域的问题的更完整的陈述吗

我可以看到您正在从某个地方导入以CSV形式提供的科目表

不知何故,您的脚本知道应该分配给帐户的余额,但我不清楚这些额外信息的真正来源

如果您有另一个包含余额(余额)的表,似乎不需要向导入的数据中添加列,您可以在导入科目表后简单地合并数据(大概是为了获得最新名称):

或者(如果您不确定两侧是否缺少物品):

SELECT *
FROM Balances
INNER JOIN COA
    ON COA.Account = Balances.Account
SELECT *
FROM Balances
FULL OUTER JOIN COA
    ON COA.Account = Balances.Account