Я изменил синтаксис вашего запроса, чтобы правильно проверить оба поля:
SELECT A, B from `table` WHERE A LIKE 'search string' AND B LIKE 'search string'
Но, возможно, вам понадобятся некоторые символы подстановки в предложении LIKE
, иначе это буквальное совпадение, не отличающееся от =
.
SELECT A, B from `table` WHERE A LIKE '%search string%' AND B LIKE '%search string%'
Но будьте осторожны с использованием подстановочных знаков, потому что они могут препятствовать использованию индексов в ваших запросах, если они появляются в начале выражения, как в примере, который я привел.
UPDATE:
Ваш вопрос сформулирован немного двусмысленно. Возможно, вы имели в виду объединить A
и B
вместе и сравнить их с search string
. В этом случае вы можете попробовать что-то вроде следующего (только в MySQL):
SELECT A, B from `table` WHERE concat(A, B) LIKE '%search string%';
Но не ожидайте, что он будет работать хорошо из-за вызова функции и подстановочных знаков.
ОБНОВЛЕНИЕ № 2:
Я вижу по вашему комментарию, что вы действительно хотите это:
SELECT A, B from `table` WHERE 'search string' LIKE concat('%', A, '%')
AND 'search string' LIKE concat('%', B, '%');