プロが教える店舗&オフィスのセキュリティ対策術

SQLのSELECTで、電話番号などを検索する場合に、ハイフン(-)や、括弧を除いて検索する方法はありますか?
たとえば、次のようなデータがある場合、1234567890のように、数値だけを入力して検索に引っかけたいのです。また、567890のみで後方一致をする際にも、ハイフンや確固がのぞければと思います。
1234-56-7890
1234(56)7890

良い方法があれば、教えてください。

A 回答 (1件)

電話番号を、括弧やハイフンを除いた形で格納しておけばいいだけでは?



検索条件で文字列演算など、列を加工するような指定をすると、インデクスを利用できず性能を出せませんよ?

<SQL例>
select id,telno,replace(replace(replace(telno,'-',''),'(',''),')','') as telno
from t1
    • good
    • 1
この回答へのお礼

既に数千件のデータが蓄積されているため、現状で検索する方法がないかと思っていたのですが、やはり置き換えが一番良さそうですね。
ありがとうございました。

お礼日時:2008/04/22 16:43

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す


このQ&Aを見た人がよく見るQ&A