Cравнение 2х таблиц mysql

  • Автор темы PHPDOWN
  • Дата начала

PHPDOWN

Guest
Cравнение 2х таблиц mysql

Имеется огромная проблема, помогите написать скрипт для обновления цены товара в базе mysql, имеется 2 таблицы: 1-я Оригинал, 2-я Поставщик, мне необходимо произвести сравнение этих 2х таблиц Mysql по полю Код на предмет изменения значения в поле Цена, в случае отличия цены в таблице Оригинал обновить её на цену Поставщика.

В базе порядка 2000-2500 позиций, подлежащих к каждодневному сравнению..

Буду благодарен за любую помощь!!
 

Popoff

popoff.donetsk.ua
решение "в лоб":

select post.* from orig,post where orig.id=post.id and orig.price<>post.price

вернет тебе список идентификаторов и новые стоимости товаров, цены на которые изменились. потом в цикле обновляешь.
 

PHPDOWN

Guest
Чего то я не догоняю..

У меня в базе имеются две таблицы
1. price (оригинал)
со столбцами: product_id - столбец кода, и product_price - с ценой.

2. post (поставщик)
со столбцами: product_id - столбец кода, и post_price - с ценой.

Догнал!!

-~{}~ 05.07.05 13:59:

Люди не могли бы Вы описать все таки цикл?

мне нужно сделать так, что бы то что выводится в SELECT затем автоматически обновлялось в таблице price->product_price :(
 

Popoff

popoff.donetsk.ua
Автоматически не получится, нужно все делать вручную. :)
 

camka

не самка
Смотри в мануале синтаксис команды UPDATE для нескольких таблиц. Соединяй таблицы по нужному полю и обновляй записи, если нужное условие вополняется.

Вся операция производится одним запросом к базе.
 

PHPDOWN

Guest
camka
Вся операция производится одним запросом к базе.
Ты можеш мне этот запрос описать.. нифига найти не могу я вообще не силен в mysql..
 

camka

не самка
mysql.com/update
Зри во второй приведенный вариант синтаксиса.
А если соблаговолишь и ниже прокрутить страничку, увидешь и примеры применения оного.
 

PHPDOWN

Guest
Понял так:
update price, post set price.product_price=post.product_price where price.product_id=post.product_id


Подскажите как сделать выборку, что-бы вывести данные о коде(ах) товара из таблицы post.product_id, которые еще не содержатся в таблице price.product_id

?
 

PHPDOWN

Guest
Вот-с, пол-дня в инете, затем другие пол-дня за консолью и вот результат:

SELECT post.product_id FROM post LEFT JOIN price ON post.product_id = price.product_id WHERE price.product_id IS NULL

:)
 
Сверху