У меня есть DB более 1M записей, и мне нужно выполнить запрос в mysql. У меня 2 колонии с 2 номерами. Один из них - длинный номер предприятия и другой короткий номер антракта. Оба номера связаны между собой. Например: компания будет иметь короткое число 112233445 и длинное число 11223344566777. Что мне нужно сделать, так это выбрать все линии, где короткий номер отличается от начала длинного номера. Вы можете мне помочь ?Complexe sql query in where where
0
A
ответ
1
Использование LIKE
:
SELECT *
FROM yourTable
WHERE long_num NOT LIKE CONCAT(short_num, '%')
Если вы также хотите ограничить результаты поиска длинных чисел, которые не имеют 14 символов, то вы можете добавить второе условие к WHERE
пункта:
SELECT *
FROM yourTable
WHERE long_num NOT LIKE CONCAT(short_num, '%') AND
CHAR_LENGTH(long_num) <> 14
Типы данных столбцов? – jarlh