Php выберите из mysql, где название начинается с A (и только A)
Я уверен, что это очень просто, но не может показаться, что это понятно. Мне нужно выбрать все заголовки из моей базы данных, где название начинается с A, или B, или C и т.д. вы пробовали:
SELECT * FROM weblinks WHERE catid = 4 AND title LIKE 'A'
но ничего не возвращает. Может ли кто-нибудь помочь мне с этим?
Приветствия
Ответы
Ответ 1
Для заголовков, начинающихся в 'A', используйте %
после A
SELECT * FROM weblinks WHERE catid = 4 AND title LIKE 'A%'
Для заголовков с буквой "A" в нем используйте %
по обе стороны от A
SELECT * FROM weblinks WHERE catid = 4 AND title LIKE '%A%'
Для заголовков, заканчивающихся буквой "A", используйте %
перед A
SELECT * FROM weblinks WHERE catid = 4 AND title LIKE '%A'
В основном %
является подстановочным знаком. Он сообщает MySQL, что все может быть в этом месте.
Чтобы иметь номера в качестве первой буквы, откройте Отметьте ответ.
Ответ 2
Подстановочные знаки для LIKE
являются %
и _
, где% соответствует 0 или более символам и _ соответствует ровно одному символу.
Ответ 3
Существующие ответы правильны для начала с A:
SELECT * FROM weblinks WHERE catid = 4 AND title LIKE 'A%'
Для начала с любого номера вы можете использовать оператор REGEXP:
SELECT * FROM weblinks WHERE catid = 4 AND title REGEXP '^[0-9]'
Ответ 4
попробовать:
SELECT * FROM weblinks WHERE catid = 4 AND ((title like 'A%') OR (title like 'B%'))
так далее и т.д.
Ответ 5
SELECT * FROM weblinks WHERE catid = 4 AND title LIKE 'A%'
% говорит "ничего", поэтому "А" тогда ничего. Работает только с оператором сравнения LIKE.