Den1xxx
Постоялец
- Регистрация
 - 15 Янв 2014
 
- Сообщения
 - 291
 
- Реакции
 - 168
 
- Автор темы
 - #1
 
Здравствуйте.
Чего-то не соображу, помогите пожалуйста.
При парсинге из 1С заношу товары во временную таблицу, выбирая определённый склад.
Структура временной таблицы
	
	
	
		
Всё ок.
Теперь из временной таблицы нужно перенести в склады.
Структура таблицы складов
	
	
	
		
При вставке в `store` мы одним запросом хотим вставить всё напарсенное из временной таблицы, т.е. например поле store=1
Как сделать запрос: если в таблице `store` уже есть значение поля store=1 и item_id совпадает с временной таблицей, то обновить значения, иначе — вставить новое?
Чего-то торможу, голову сломал уже.
	
		
			
		
		
	
				
			Чего-то не соображу, помогите пожалуйста.
При парсинге из 1С заношу товары во временную таблицу, выбирая определённый склад.
Структура временной таблицы
		Код:
	
	CREATE TABLE `import_items` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'Номер записи',
  `item_id` varchar(11) NOT NULL COMMENT 'Ид товара сайта',
  `item_id_1c` varchar(255) NOT NULL COMMENT 'Ид товара 1С',
  `cat_id_1c` varchar(255) NOT NULL COMMENT 'Ид категории 1С',
  `name` varchar(255) NOT NULL COMMENT 'Имя объекта',
  `price` varchar(25) DEFAULT NULL COMMENT 'Цена оптовая',
  `price1` varchar(25) DEFAULT NULL COMMENT 'Цена 1 дилера',
  `price2` varchar(25) DEFAULT NULL COMMENT 'Цена 2 дилера',
  `price3` varchar(25) DEFAULT NULL COMMENT 'Цена 3 дилера',
  `price4` varchar(25) DEFAULT NULL COMMENT 'Цена 4 дилера',
  `avail_1c` varchar(255) NOT NULL COMMENT 'Статус',
  `quantity` varchar(25) NOT NULL COMMENT 'Количество',
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=1215 DEFAULT CHARSET=utf8 COMMENT='Объекты для записи каталога из 1С'
	Теперь из временной таблицы нужно перенести в склады.
Структура таблицы складов
		Код:
	
	CREATE TABLE `store` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'Номер записи',
  `item_id` varchar(11) NOT NULL COMMENT 'Ид товара сайта',
  `name` varchar(255) NOT NULL COMMENT 'Имя объекта',
  `store` int(5) NOT NULL COMMENT 'Номер склада',
  `code_1c` varchar(255) DEFAULT NULL,
  `price` varchar(255) DEFAULT NULL COMMENT 'Цена',
  `price1` varchar(255) DEFAULT NULL COMMENT 'Цена 1',
  `price2` varchar(255) DEFAULT NULL COMMENT 'Цена 2',
  `price3` varchar(255) DEFAULT NULL COMMENT 'Цена 3',
  `price4` varchar(255) DEFAULT NULL COMMENT 'Цена 4',
  `quantity` float DEFAULT NULL COMMENT 'Количество',
  `date` datetime NOT NULL COMMENT 'Время изменения',
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='Склад'
	При вставке в `store` мы одним запросом хотим вставить всё напарсенное из временной таблицы, т.е. например поле store=1
Как сделать запрос: если в таблице `store` уже есть значение поля store=1 и item_id совпадает с временной таблицей, то обновить значения, иначе — вставить новое?
Чего-то торможу, голову сломал уже.