sql update select

1 UPDATE A SET A1 = B1, A2 = B2, A3 = B3 FROM A, B WHERE A.ID = B.ID
2 UPDATE A  SET A1 = B1, A2 = B2, A3 = B3  FROM A LEFT JOIN B ON A.ID = B.ID

 

UPDATE ... SET ... FROM

1 UPDATE t
2 SET    t.Column = s.NewValue
3 FROM   TargetTable t
4        INNER JOIN SourceTable s ON t.Key = s.Key
5 WHERE  t.Flag = 0;

 

SELECT INTO(自动创建新表)

1 -- 创建 Orders_Backup 表,结构来自 Orders,只包含 2025 年的订单
2 SELECT OrderID, OrderDate, CustomerID, TotalAmount
3 INTO   Orders_Backup
4 FROM   Orders
5 WHERE  OrderDate >= '2025-01-01';

 

INSERT INTO ... SELECT

1 -- 假设 Orders_Archive 已存在且结构与 Orders 兼容
2 INSERT INTO Orders_Archive (OrderID, OrderDate, CustomerID, TotalAmount)
3 SELECT OrderID, OrderDate, CustomerID, TotalAmount
4 FROM   Orders
5 WHERE  OrderDate < '2024-01-01';

 

posted @ 2024-08-20 17:18  。活着。  阅读(26)  评论(0)    收藏  举报