我有 2 个表,orders 和 order_detail。
订单
id_order | currency | conversion_rate
--------------------------------------------
1 1 1
2 1 1
3 7 8.523856
4 1 1
5 1 1
6 7 8.457893
7 1 1
订单详情
id_order | id_order_detail | price
--------------------------------------------
1 1 100
1 2 150
2 3 150
3 4 2500
3 5 2100
4 6 160
5 7 190
6 8 2300
6 9 1500
7 10 125
我需要将所有订单prices
与来自订单表的所有内容除以货币不是1且汇率不是1的对应表order_detail table
(基本上将所有订单转换为默认货币,1)。conversion_rate
order_id
所以期望的结果是:
订单详情
id_order | id_order_detail | price
--------------------------------------------
1 1 100
1 2 150
2 3 150
3 4 293.29449
3 5 246.367371
4 6 160
5 7 190
6 8 271.93533
6 9 177.349134
7 10 125
我做了一个查询:
UPDATE order_detail
SET price = price/orders.conversion_rate
WHERE orders.id_order = order_detail.id_order
AND orders.conversion_rate != 1
AND orders.currency != 1;
我现在被困在这里,因为它给出了关于未知列orders.conversion_rate 的错误,尽管它就在那里。
请帮我完成这个查询。