varcharとして保存されている電話番号を削除する必要があります。不明な電話番号が1桁のシーケンスとして格納されている不良データがあります。最終的にもっと複雑な(市外局番&接頭辞マッチング)が行われますが、私は明らかに悪いレコードに単純なクエリをします。例えばのでT-SQL単一の繰り返し文字/数字で構成されるvarcharフィールドを識別するクエリ?
:
有効な電話番号:3289903829
無効な電話番号:1111111111
偽のプロダクトIDが適切な長さ(10桁)がある場合、今では解析が簡単で、クリーン。
SELECT phone
FROM customers
SET phone = NULL
WHERE phone IN ('0000000000','9999999999',''8888888888','7777777777','6666666666','5555555555','4444444444','3333333333','2222222222','1111111111')
ただし、偽の電話機は、(実際にはタイプミスの可能性があります)11個、9個、またはn個の場合があります。
同じ文字/数字のすべてで構成されるID文字列はどのようにすることができますか?
1111111 - match
4444 - match
1112 - no match
4445555 - no match
'substring(phone、1,1)'ではなく 'left(phone、1)'を使うこともできます。 –
@マーク、ありがとうございますあなたのコメント –
@ adriftは(電話、1)よりも速く(電話、1)残っていますか?ちょっと興味があるんだけど。 –