赞
踩
MERGE INTO语句的案例:
假设我们有两个表格,一个是"users"表格,包含了用户的ID、姓名和地址信息;另一个是"users_updates"表格,包含了用户的ID和更新后的地址信息。我们想要使用MERGE INTO语句将"users_updates"表格中的地址信息合并到"users"表格中。
首先,我们创建"users"表格并插入一些示例数据:
CREATE TABLE users (
id INT PRIMARY KEY,
name VARCHAR(50),
address VARCHAR(100)
);
INSERT INTO users (id, name, address)
VALUES (1, 'John', '123 Main St');
INSERT INTO users (id, name, address)
VALUES (2, 'Jane', '456 Elm St');
COMMIT;
查询结果:
SELECT * FROM users;
id | name | address
---+------+-------------
1 | John | 123 Main St
2 | Jane | 456 Elm St
接下来,我们创建"users_updates"表格并插入一些示例数据:
CREATE TABLE users_updates (
id INT,
address VARCHAR(100)
);
INSERT INTO users_updates (id, address)
VALUES (1, '789 Oak St');
INSERT INTO users_updates (id, address)
VALUES (3, '987 Maple St');
COMMIT;
表数据查询结果:
SELECT * FROM users_updates;
id | address
---+-------------
1 | 789 Oak St
3 | 987 Maple St
现在,我们可以使用MERGE INTO语句将"users_updates"表格中的地址信息合并到"users"表格中,并根据ID进行匹配:
MERGE INTO users AS u
USING users_updates AS uu
ON (u.id = uu.id)
WHEN MATCHED THEN
UPDATE SET u.address = uu.address
WHEN NOT MATCHED THEN
INSERT (id, name, address)
VALUES (uu.id, '', uu.address);
上述MERGE INTO语句执行的操作如下:
执行完上述语句后,查看"users"表格,我们可以看到更新和插入的结果:
SELECT * FROM users;
id | name | address
---+------+-------------
1 | John | 789 Oak St
2 | Jane | 456 Elm St
3 | | 987 Maple St
如以上示例所示,MERGE INTO语句可以根据指定的条件将两个表格中的数据进行合并和更新,非常方便实用。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。