-- 示例代码:MySQL 中使用 MERGE INTO 语句(假设 MySQL 版本支持该语法)
-- 创建目标表 target_table
CREATE TABLE target_table (
id INT PRIMARY KEY,
name VARCHAR(50),
value INT
);
-- 创建源表 source_table
CREATE TABLE source_table (
id INT PRIMARY KEY,
name VARCHAR(50),
value INT
);
-- 插入一些示例数据到 target_table
INSERT INTO target_table (id, name, value) VALUES
(1, 'Alice', 100),
(2, 'Bob', 200),
(3, 'Charlie', 300);
-- 插入一些示例数据到 source_table
INSERT INTO source_table (id, name, value) VALUES
(1, 'Alice', 150),
(2, 'Bob', 250),
(4, 'David', 400);
-- 使用 MERGE INTO 语句
MERGE INTO target_table t
USING source_table s
ON t.id = s.id
WHEN MATCHED THEN
UPDATE SET t.value = s.value
WHEN NOT MATCHED THEN
INSERT (id, name, value) VALUES (s.id, s.name, s.value);
-- 解释说明:
-- 1. MERGE INTO 语句用于将 source_table 中的数据合并到 target_table 中。
-- 2. ON 子句指定了匹配条件,这里是根据 id 字段进行匹配。
-- 3. WHEN MATCHED THEN 部分指定了当匹配成功时要执行的操作,这里是更新 target_table 中的 value 字段。
-- 4. WHEN NOT MATCHED THEN 部分指定了当没有匹配时要执行的操作,这里是插入新的记录到 target_table 中。
请注意,MySQL 传统上并不直接支持 MERGE INTO
语法。如果你使用的 MySQL 版本不支持此语法,你可以使用其他方式实现类似的功能,例如通过 INSERT ... ON DUPLICATE KEY UPDATE
或者 REPLACE INTO
语句。
如果 MySQL 版本确实不支持 MERGE INTO
语法,则返回 "error"。
上一篇:mysql允许远程连接数据库
下一篇:mysql 增加字段语句
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站