У меня есть таблица со столбцом, где значения не должны быть одинаковыми. Из-за плохой реализации программное обеспечение не проверяет, входит ли пользователь в дубликат или нет, поэтому мне была поручена задача написать «простой» SQL-запрос или функцию, которая будет рассматривать все значения в столбце и гарантировать, что они не являются идентичны. Сам sql будет выполняться один раз в месяц, поэтому он не должен быть эффективным.Убедитесь, что значения не совпадают в столбце
В столбце хранится int, и я хотел бы увеличить одно из повторяющихся значений и продолжать делать это каждый раз, пока в таблице не будет больше записей, имеющих одинаковое значение для столбца. Любое предложение, что я должен делать? Я не знаю, с чего начать.
Спасибо всем за понимание.
EDIT: Извините, забыл упомянуть, что значения в данных, которые не дублируются, должны оставаться такими. Это настройки, используемые для клиентов, и мы должны наказать их, только если они имеют повторяющиеся значения. Если они этого не сделают, тогда мы не должны разрушать их настройки, или они будут злы.
Это всего лишь одна таблица, содержит много столбцов, но этот конкретный столбец, в частности, который имеет тип int и никогда не содержит никаких нулей, не должен иметь дубликатов.
Для чего предназначена эта колонка? –
@Quillion, сколько количество столбцов вы должны проверить, пожалуйста, также уточните структуру таблицы. –
Этот столбец ссылается на любую другую таблицу или данные? Похоже, что он должен был первоначально быть столбцом auto_increment и теперь вы пытаетесь снова заставить значения снова быть уникальными. Но если это так, есть вероятность, что вы используете его в качестве внешнего ключа, где (хотя и без ограничения внешнего ключа). Кроме того, действительно ли имеет значение, какое новое значение вы даете любому из дубликатов? Разве это не просто неиспользуемое целое число? – MatBailie