【发布时间】:2021-07-19 14:05:52
【问题描述】:
我有 2 个表,我进行了内部联接。
1)car_table
|car_id| cars |
|----- | ----- |
|1 | Passat |
2)property_model
|model_id| p_value |
|--------| ----- |
|1 | year |
|2 | color |
|3 | gear |
3)property_value
|value_id| car_id| model_id| rs_value |
|--------|----- | ----- | ----- |
|1 | 1 | 1 | 2020 |
|2 | 1 | 2 | Black |
|3 | 1 | 3 | Manuel |
我遵循了这样的方式,但代码给出了错误
INSERT INTO property_value (model_id,rs_value)
SELECT model_id,car_id
CASE model_id
WHEN 1 AND car_id=1 THEN '2020'
WHEN 2 AND car_id=1 THEN 'Black'
WHEN 3 AND car_id=1 THEN 'Manuel'
END
FROM property_model
php如何将property_model表中的新数据添加到property_value表中?
【问题讨论】:
-
您使用的语法没有多大意义。为什么不只使用三个独立的
INSERTs,每个model_id一个? -
你需要一个
SELECT子查询。 -
您要插入新行,还是更改现有行的
rs_value列?为什么要加入要插入的表? -
@barmar 我想添加新行示例:model=1 then '2020', model=2 then 'black' as
标签: mysql sql-insert case-when