我正在处理我的 wordpress 数据库,我想更新我的表get
并将所有wp_postmeta
字段设置为从_order_tax
用公式:
_order_tax = 0.2 * _order_total
我想对_order_total
的每一行进行此更新,但是我不知道如何写新值应基于同一{{ 1}}
例如,我想编写(符号语言而不是sql):
在
meta_key = _order_total
是 1834 的地方,然后更新包含以下内容的行的_order_total
post_id
列中的post_id
,该行的meta_value
包含_order_tax
中的meta_key
,并且与我要更新的行相同的meta_value*0.2
。
我希望我的问题很清楚。
感谢您的帮助
答案 0 :(得分:1)
您可以使用UPDATE ... JOIN ... SET ... WHERE ...
语法,如下所示:
UPDATE wp_postmeta w1
INNER JOIN wp_postmeta w2
ON w2.post_id = w1.post_id
AND w2.meta_key = '_order_total'
SET w1.meta_value = w2.meta_value * 0.2
WHERE w1.meta_key = '_order_tax'