使用表中的值更新新SQL列
我正在使用SQL来执行一个基本的计算,但我无法找出正确的语法。我有一个表,希望在其中添加一个新列,并使用现有值的组合填充该列的值。下面是我用来说明问题的代码使用表中的值更新新SQL列,sql,insert,Sql,Insert,我正在使用SQL来执行一个基本的计算,但我无法找出正确的语法。我有一个表,希望在其中添加一个新列,并使用现有值的组合填充该列的值。下面是我用来说明问题的代码 -- create a table CREATE TABLE test ( x numeric(10,3), y numeric(10,3) ); -- add some sample values INSERT INTO test (x,y) VALUES( 7,3 ); INSERT INTO test (x,y) VALUES( 8
-- create a table
CREATE TABLE test (
x numeric(10,3),
y numeric(10,3)
);
-- add some sample values
INSERT INTO test (x,y) VALUES( 7,3 );
INSERT INTO test (x,y) VALUES( 8,4 );
-- add a new column
ALTER TABLE test ADD testcalc numeric(10,3);
-- values in new column (testcalc) using the sum of values from x and y
INSERT INTO
test (testcalc)
SELECT
t.x + t.y
FROM
test as t;
这将生成下表:
我知道这些值是作为新行插入的,但是我如何才能将它们作为值添加到我的列中,从而使表的结构如下所示
x | y | testcalc
7 | 3 | 10
8 | 4 | 12
您需要在查询的最后一部分使用
UPDATE
而不是INSERT
:
UPDATE test SET
testcalc = x + y
SELECT * FROM test
您需要在查询的最后一部分使用
UPDATE
而不是INSERT
:
UPDATE test SET
testcalc = x + y
SELECT * FROM test
使用update命令而不是Insert 使用更新命令而不是插入 如果
INSERT
UPDATE test
SET testcalc = x + y
参见如果
插入
UPDATE test
SET testcalc = x + y
请参见sql的语法将是
Update tablename set newcolumn=old_col1+old_col2;
sql的语法将是
Update tablename set newcolumn=old_col1+old_col2;
啊,所以我的例子涉及一些琐碎的数据。我正在执行一个更复杂的查询,但不知道如何用我的结果更新表!在SQL
的世界里,有很多东西需要学习!啊,所以我的例子涉及一些琐碎的数据。我正在执行一个更复杂的查询,但不知道如何用我的结果更新表!在SQL
的世界里,有很多东西需要学习!