Sql 从行Id=2更新行Id=1
我有一个产品表,包括id和名称。就说我有,Sql 从行Id=2更新行Id=1,sql,sql-server,Sql,Sql Server,我有一个产品表,包括id和名称。就说我有, Id Name 1 A 2 B 3 C 我想用Id=1的行的值更新Id=2的行。这就是我要找的 Id Name 1 A 2 A 3 C 我正在尝试不同的语法,但没有任何效果 更新:上面的示例使用一列,但我有许多列要更新。您可以这样做: UPDATE P1 SET P1.Name = P2.Name, P1.X = P2.X, ...... FROM Products P1 CROSS JOIN Products P2 WHERE P1.
Id Name
1 A
2 B
3 C
我想用Id=1的行的值更新Id=2的行。这就是我要找的
Id Name
1 A
2 A
3 C
我正在尝试不同的语法,但没有任何效果
更新:上面的示例使用一列,但我有许多列要更新。您可以这样做:
UPDATE P1 SET P1.Name = P2.Name, P1.X = P2.X, ......
FROM Products P1 CROSS JOIN Products P2 WHERE P1.Id = 2 AND P2.Id = 1;
你可以这样做:
UPDATE P1 SET P1.Name = P2.Name, P1.X = P2.X, ......
FROM Products P1 CROSS JOIN Products P2 WHERE P1.Id = 2 AND P2.Id = 1;
你可以这样做:
UPDATE P1 SET P1.Name = P2.Name, P1.X = P2.X, ......
FROM Products P1 CROSS JOIN Products P2 WHERE P1.Id = 2 AND P2.Id = 1;
你可以这样做:
UPDATE P1 SET P1.Name = P2.Name, P1.X = P2.X, ......
FROM Products P1 CROSS JOIN Products P2 WHERE P1.Id = 2 AND P2.Id = 1;
你需要更新每一列
UPDATE Product
SET
Product.Name = anotherRow.Name
, Product.AnotherColumn = anotherRow.AnotherColumn,
--, Other columns
FROM
(
SELECT
Name
, AnotherColumn
--, other columns
FROM Product
WHERE ID = 1
) anotherRow
WHERE
Product.ID = 2
或者,如果在复制数据之后,您将删除ID=1的行,然后只更新ID列您需要更新每一列
UPDATE Product
SET
Product.Name = anotherRow.Name
, Product.AnotherColumn = anotherRow.AnotherColumn,
--, Other columns
FROM
(
SELECT
Name
, AnotherColumn
--, other columns
FROM Product
WHERE ID = 1
) anotherRow
WHERE
Product.ID = 2
或者,如果在复制数据之后,您将删除ID=1的行,然后只更新ID列您需要更新每一列
UPDATE Product
SET
Product.Name = anotherRow.Name
, Product.AnotherColumn = anotherRow.AnotherColumn,
--, Other columns
FROM
(
SELECT
Name
, AnotherColumn
--, other columns
FROM Product
WHERE ID = 1
) anotherRow
WHERE
Product.ID = 2
或者,如果在复制数据之后,您将删除ID=1的行,然后只更新ID列您需要更新每一列
UPDATE Product
SET
Product.Name = anotherRow.Name
, Product.AnotherColumn = anotherRow.AnotherColumn,
--, Other columns
FROM
(
SELECT
Name
, AnotherColumn
--, other columns
FROM Product
WHERE ID = 1
) anotherRow
WHERE
Product.ID = 2
或者,如果在复制数据之后,您将删除ID=1的行,然后只更新ID列您只想对ID=2或其他行执行此操作?我只需要从中更新x行y@user960567y=x+1是始终存在还是可以更改?您只想对Id=2或其他行执行此操作?我只需要从中更新x行y@user960567y=x+1是否始终或可以更改您只想对Id=2或其他行执行此操作还有?我只需要从y@user960567y=x+1是始终存在还是可以更改?您只想对Id=2或其他行执行此操作?我只需要从中更新x行y@user960567y=x+1是始终存在还是可以存在change@user960567-那么,你为什么不告诉我们所有的细节?为什么要保密?需要更新的列数不相关,只需用逗号分隔:
t1.name=,t1.地址=,t1.company=…
@user960567-那么,你为什么不告诉我们所有的细节呢?为什么要保密?需要更新的列数不相关,只需用逗号分隔:t1.name=,t1.地址=,t1.company=…
@user960567-那么,你为什么不告诉我们所有的细节呢?为什么要保密?需要更新的列数不相关,只需用逗号分隔:t1.name=,t1.地址=,t1.company=…
@user960567-那么,你为什么不告诉我们所有的细节呢?为什么要保密?需要更新的列数不相关,只需用逗号分隔:t1.name=,t1.地址=,t1.company=…
检查下面的答案。两个查询执行相同的任务检查下面的答案。两个查询执行相同的任务检查下面的答案。两个查询执行相同的任务检查下面的答案。两个查询执行相同的任务