Запрос MySQL для исключения комбинации строк

#mysql #sql

Вопрос:

Нужно увидеть пример синтаксиса MySQL, в котором строковая комбинация типа «Финансы-Финансы» должна быть исключена из значения столбца.

Ответ №1:

Вы можете использовать check ограничение в самых последних версиях. Итак, один из методов заключается в:

 check ( col <> concat(substring_index(col, '-', 1), '-', substring_index(col, '-', 1)))
 

Если вы просто хотите отфильтровать строки в существующей таблице, используйте:

 where col <> concat(substring_index(col, '-', 1), '-', substring_index(col, '-', 1))
 

Комментарии:

1. Я вижу, что проверка используется для СОЗДАНИЯ и ИЗМЕНЕНИЯ таблицы. Могу ли я использовать предложение check with where при извлечении данных из таблицы и исключении сценария, такого как Finance-Финансы. Есть какие-нибудь предложения?