Как проверить на уникальность данные перед добавлением в базу?

Хочу занести данные из чата в MySql. Перед вставкой данных проверю наличие записей по двум колонкам и потом вставлять в БД.

IF (SELECT COUNT(*) FROM chat WHERE chat.nickname = 'МойНик' and chat.datecreated= '2021-01-17T07:00:32+00:00' = 0)
   INSERT ...
END

Всё работает, но хочется более элегантное решение. Допустим при вставке игнорировать дубли по нескольким колонкам. Что то типа IGNORE. Чтобы я каждый раз не проверял есть ли данные в БД. Данных много, поэтому это тормозит работу

введите сюда описание изображения


Ответы (1 шт):

Автор решения: Radzhab

Надо было создать уникальный индекс по двум полям

create unique index tab_ind1 on tab(nickname, datecreated)
→ Ссылка