私の論理は間違っています。私の人生談。とにかく、私は次のクエリを持っていますが、1つの列の複数の文字列チェック中に失敗していると思います。AND
演算子を使用して、1つの列の複数の文字列をチェックできるようにしたい。
たとえば、このメール「dick1sucker@gmail.com」を抑制したいのですが、「dickeynewman@gmail.com」を抑制したくありません。以下の演算子を使用するAND
と、ステートメントを括弧で囲んでも、いずれかの文字列チェックが発生するとレコードが抑制されているように見えます。
/****** Script for CHECK DOMAIN SUFFIX AND VULGARITIES ******/
SELECT EMAIL
INTO Matched_Table
FROM Matched_Table_TEMP
WHERE (RIGHT(RTRIM(EMAIL),4) IN ('.COM','.NET','.MIL','.GOV','.ORG','.BIZ') OR RIGHT(RTRIM(EMAIL),3) = '.US')
AND (CHARINDEX('DICK',EMAIL) = 0 and CHARINDEX('SUCKER',EMAIL) = 0)
AND (CHARINDEX('DICK',EMAIL) = 0 and CHARINDEX('HEAD',EMAIL) = 0)
AND (CHARINDEX('DICK',EMAIL) = 0 and CHARINDEX('CHOKE',EMAIL) = 0)
AND (CHARINDEX('DICK',EMAIL) = 0 and CHARINDEX('FACE',EMAIL) = 0)
AND (CHARINDEX('DICK',EMAIL) = 0 and CHARINDEX('NOSE',EMAIL) = 0)
AND (CHARINDEX('COCK',EMAIL) = 0 and CHARINDEX('SUCKER',EMAIL) = 0)
リストにさらに多くのvularityを追加しますが、明らかに最初にロジックを修正する必要があります。
別の例として、現在、上記は次の電子メールを抑制していますが、抑制したくありません。
METALHEAD038@HOTMAIL.COM
BAND2FACEDKITTY@AOL.COM
ANGELFACE30_98@YAHOO.COM
TERESADICKSON921@HOTMAIL.COM
ROARINGARTICHOKE@TOMGREEN.COM
CERNOSEK@YAHOO.COM