2017-08-15 92 views
1

當我嘗試搜索時,我電話號碼中的空格導致問題。SQL LIKE聲明與空格

Select * from customers where number LIKE '%02722231%'

這將返回記錄that're LIKE「02722231」,但這不會返回包含空格例如任何記錄'027 22231'

這可以用正則表達式來完成嗎?我需要尋找0272542155,並得到所有記錄相同,包括027 2542155

+1

先嚐試刪除所有空間。此外,您應該說明您正在使用的RDMS,例如sqlserver,mysql,oracle ... – Prisoner

+0

您可以使用REPLACE替換空格('')和('')。看到https://stackoverflow.com/questions/2709929/query-that-ignore-the-spaces – Preet

+0

接受的答案完美的作品,但感謝您的幫助團隊。 –

回答

2

試試這個:

Select * from customers where REPLACE(number, ' ', '') LIKE '%02722231%' 
+0

完美,謝謝。我確實看過這個。我很接近:SELECT * FROM customers WHERE REPLACE(number,「」,「」)='02722231';我仍然需要使用LIKE功能。 –

+0

不用擔心:)高興地幫忙 –