|
|
|
Mysql select in 1 table, update 2 table
|
|||
|---|---|---|---|
|
#18+
Есть 3 таблицы : shop_product_skus (id,product_id,sku,sort,name,image_id,price,primary_price,purchase_price,compare_price,count,available,dimension_id,file_name,file_size,file_description,virtual) это таблица артикулов 1 продукта (много к 1) shop_product_stocks (sku_id, stock_id,product_id, count) это таблица количества товаров на разных складах shop_product_ostatki (id,sku,count,price) это временная таблица с количеством товара, ценой и sku с одного склада, например stock_id=1 (обновляется 1 раз в 30 мин) shop_product_skus и shop_product_stocks связаны по product_id 2 таблицы связанны по полю shop_product_skus.sku=shop_product_ostatki.sku 2 таблицы по полю shop_product_skus.id=shop_product_stocks.sku_id Нужно обновить данные из shop_product_ostatki В shop_product_skus нужно обновить shop_product_skus.price=shop_product_ostatki.price*1.07, shop_product_skus.purchase_price=shop_product_ostatki.price*0.7 where shop_product_skus.sku=shop_product_ostatki.sku В shop_product_stocks нужно обновить если нет строки добавить shop_product_stocks.count=shop_product_ostatki.count, shop_product_stocks.price=shop_product_ostatki.price*1.07 where shop_product_skus.sku=shop_product_ostatki.sku and shop_product_skus.id=shop_product_stocks.sku_id Немного запутанно наверное объяснил, хотелось сделать это все в 1 запросе ps уже 4 дня бьюсь с этим вопросом pps поиск пользовал, похожих вопросов не нашел :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2013, 15:50:53 |
|
||
|
Mysql select in 1 table, update 2 table
|
|||
|---|---|---|---|
|
#18+
Попробовал так Код: sql 1. 2. 3. 4. 5. 6. 7. 8. Не работает... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2013, 18:12:14 |
|
||
|
Mysql select in 1 table, update 2 table
|
|||
|---|---|---|---|
|
#18+
Структура базы тут http://sqlfiddle.com/#!2/96e67 В select ошибка правильно так Код: sql 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2013, 18:50:37 |
|
||
|
Mysql select in 1 table, update 2 table
|
|||
|---|---|---|---|
|
#18+
Михаил7777777, для shop_product_skus (взято вот отсюда dev.mysql.com...update.html ): Multiple-table syntax: Код: sql 1. 2. 3. для вашего случая пример написать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2013, 20:08:06 |
|
||
|
Mysql select in 1 table, update 2 table
|
|||
|---|---|---|---|
|
#18+
Да, если вам не сложно Последнее что получилось Код: sql 1. 2. 3. 4. 5. ругается на count ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2013, 23:04:54 |
|
||
|
|

start [/forum/topic.php?desktop=1&fid=47&tid=1835624]: |
0ms |
get settings: |
4ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
29ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
17ms |
get tp. blocked users: |
1ms |
| others: | 203ms |
| total: | 274ms |

| 0 / 0 |
