2016-06-13 3 views
1

Я изо всех сил пытаюсь написать инструкцию SQL - Im в основном пытается различать почтовые индексы, проверяя, есть ли число после первой буквы.MySql check for numbers

Например, у меня могут быть записи с BL1 в качестве почтового индекса или B12, и когда я вхожу в поиск «B», я хочу, чтобы он выбирал записи, которые имеют числовое значение после него, - тогда, если я, очевидно, будет просто выбрать «BL%».

С ним является var char, а также я борюсь с этим, а также его MySql.

Можно ли преобразовать, затем проверить второй символ, а затем установить его в mySql?

Благодаря

+0

Использование РНР [ 'взрываются()'] (http://php.net/manual /en/function.explode.php)? Разверните их пробелами, тогда каждый индекс массива будет иметь свое собственное условие - 'WHERE column LIKE '% $ string [0]%' AND '% $ string [1]%'' –

ответ

0

Вы можете использовать регулярное выражение

SELECT * 
FROM tableName 
WHERE col REGEXP '^B[0-9]'; 

Это соответствует только те значения, которые начинаются с B и имеют цифру рядом с ним. Если вы хотите расширить регулярное выражение также включать в себя альфа-символов на второй позиции, которую вы могли бы сделать

WHERE col REGEXP '^B[0-9A-Za-z]'; 

Fiddle

+0

Спасибо! Это работает отлично! –