Использование SQL-запроса для обновления meta_key = '_ price' со значением в meta_key = '_ normal_price' - PullRequest
0 голосов
/ 13 января 2019

В базе данных для каждого продукта, который я хочу обновить _price значением _regular_price, так как значение _price меньше значения _regular_price, я пытался использовать этот запрос, но не сработало.

UPDATE wp_g9he6fnfw8_postmeta 
SET META_KEY._regular_price = META_KEY._price

Я также пытался обновить значение, как это, но не работало

UPDATE wp_g9he6fnfw8_postmeta 
SET _regular_price = _price

Где я ошибаюсь. Как я могу скопировать значение _regular_price в _price.

1 Ответ

0 голосов
/ 13 января 2019

Может потребоваться самостоятельное объединение, например

drop table if exists t;

create table t( postid int, meta_key varchar(20), meta_value int);

insert into t values
(1,'_regular_price',10),
(1,'_price',20);

update t t1 join t t2 on t2.postid = t1.postid and t2.meta_key = '_price'
set t1.meta_value = t2.meta_value
where t1.meta_key = '_regular_price';

select * from t;

+--------+----------------+------------+
| postid | meta_key       | meta_value |
+--------+----------------+------------+
|      1 | _regular_price |         20 |
|      1 | _price         |         20 |
+--------+----------------+------------+
2 rows in set (0.00 sec)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...