2016-06-13 49 views
1

我努力編寫一條SQL語句 - 我基本上試圖通過檢查第一個字母后面是否有數字來區分郵編。MySql檢查號碼

例如我可以用BL1作爲郵編或B12的記錄,當我在搜索'B'中輸入時,我只希望它選擇後面有一個數值的記錄 - 那麼如果我顯然搜索BL只是一個'BL%'的選擇。

由於它是var char以及我正在努力與這一個,也是它的MySql。

是否可以轉換然後檢查第二個字符,然後在mySql中調整它?

感謝

+0

使用PHP的['爆炸()'](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

謝謝!這工作完美! –