我正在尝试编写一个复制所有行 WHERE employee = 16
(即)的 SQL 语句,但新行将具有不同的 employee
值。
INSERT
之前的表格:
| employee | property_name | property_value |
|:--------:|:--------------|:---------------|
| 16 | Salary | 28,000 |
| 16 | Department | 12 |
| 17 | Salary | 38,000 |
| 17 | Department | 8 |
INSERT
后的预期结果:
| employee | property_name | property_value |
|:--------:|:--------------|:---------------|
| 16 | Salary | 28,000 |
| 16 | Department | 12 |
| 17 | Salary | 38,000 |
| 17 | Department | 8 |
| 18 | Salary | 28,000 |
| 18 | Department | 12 |
我见过一些使用变量的线程。我能否以某种方式设置和引用一个变量来替换插入/选择中的值?
answer to this thread看起来它会工作。但我不想那样创建和删除表。
最佳答案
insert into YourTable (employee,property_name, property_value)
select 18, property_name, property_value from YourTable where employee = 16
关于MYSQL,复制记录但更改列的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9366633/