MySql - при вставке дубликата ключа с добавленной строкой

Как вставить из одной таблицы в другую и при дублировании ключа добавить строку в новую строку?

Если я получил таблицу со значениями:
a
b
c

и хотите вставить значение tablevith:
а ,

я хочу добавить строку как 'x', поэтому я получу таблицу со значениями:
a
b
c
xa

13.12.2008 12:35:44
1 ОТВЕТ
РЕШЕНИЕ
INSERT INTO aatest
SELECT IF(COUNT(a2.letter)=0,'a','xa')
FROM aatest a1
LEFT JOIN aatest a2 ON a1.letter = a2.letter OR a2.letter IS NULL
WHERE a2.letter = 'a'

Будет буквально делать то, что вы просили ... но это не правильное решение, если у вас есть очень уникальная проблема, которую вы пытаетесь решить. Он потерпит неудачу, если в списке снова появится «a», потому что «xa» уже будет там. Решение с двумя запросами было бы намного проще, если вы выполняете это в PHP или что-то в этом роде.

Надеюсь, это поможет ... если вы предоставите более подробную информацию, я могу быть более полезным.

2
13.12.2008 20:43:59