like-a-boss
@like-a-boss
Признайся,тебяТянетНаКодМужика,ты—программный гей

Как сделать строку уникальной при её совпадении (ON DUPLICATE KEY UPDATE)?

Доброго дня, помогите решить проблему. Необходимо к строке(slug - в большинстве случаев не являющейся числом, т.е. простое арифметическое прибавление не пойдёт) в случае если она дублируется прибавлять число. Например: slug-2, slug-3 и т.д. Либо каким-то другим образом сделать эту строку уникальной.

CREATE TABLE IF NOT EXISTS `table` (
  `slug` varchar(200) NOT NULL DEFAULT '',
  PRIMARY KEY (`id`),
  UNIQUE KEY `slug` (`slug`),
  KEY `name` (`name`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8;

INSERT INTO `wc_terms` (`id`, `name`, `slug`) VALUES
(1, 'value', 'value'),
(2, 'value', 'value'),
(3, 'value', 'value')
ON DUPLICATE KEY UPDATE slug = VALUES(slug) ???????;
  • Вопрос задан
  • 2428 просмотров
Решения вопроса 1
miraage
@miraage
Старый прогер
Возможно, Вам надо использовать CONCAT.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы