Пытаюсь сделать проверку на совпадения в БД. Привожу к единому виду переменную для проверки -
$title_check = preg_replace('/[^\p{L}0-9]/iu','',$title_check);
$title_check = 'ОООВЕКАСТРОЙ';
На выходе имя в верхнем регистре, только буквы и цифры. Не могу понять какой запрос сделать к БД, чтобы он приводил сначала проверяемое поле к такому же виду и затем проверял. Поиски в гугле привели к функции REGEXP. Пытался написать что-то вроде
SELECT nid, title FROM {node} WHERE node.type='zastr' AND title LIKE REGEXP ('/[^\p{L}0-9]/iu', $title_check)
но это конечно же неправильно.
Как написать такой запрос? Сразу оговорюсь - SOUNDS LIKE не подойдёт, MATCH AGAINST не подойдёт - таблица MyISAM.
в Mysql нет оператора LIKE REGEXP
, а есть два разных оператора LIKE и REGEXP.
Поэтому надо выбрать только один.
SELECT *
FROM person
WHERE memo REGEXP '[[:<:]]John[[:>:]]'
AND memo REGEXP '[[:<:]]Smith[[:>:]]
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Добрый день! Используется связка php+mssqlВ базе есть процедура с блоком try catch
Есть директория, в ней просто громаднейшее кол-во файлов [странные люди] и дир-а постоянно пополняется