2007-09-15 IN RDB ref:ASIPの徒然なるままに: ORの代わりに正規表現 SQLで正規表現を使えるDBでは正規表現を使うとSQLがすっきりする。 「column='A' or column='B' or column='C'」を正規表現で書くと 「column ~ '^(A|B|C)$'」(A,B,Cには正規表現エスケープが必須)。 単純に複数の値を選択したいなら IN 演算子を使っとけばいいのに。 colum IN ('A', 'B', 'C') むやみに正規表現なんか使っているとインデックスが効きにくいよ! いや、しかし「^」と「$」を前方一致、後方一致という解釈はあれだなぁ。