MySQLのSQLで2文字以上の連続するアルファベットを検索するには?


select * from table_a where (nameに2文字以上の連続するアルファベット)

というようなことを書きたいと思います。

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2010/03/31 16:25:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:y-kawaz No.1

回答回数1422ベストアンサー獲得回数226

ポイント35pt

正規表現が使えるので以下のようにすれば希望通りの検索ができると思います。

SELECTFROM table_a WHERE name REGEXP '[a-zA-Z][a-zA-Z]';

http://dev.mysql.com/doc/refman/5.1/ja/regexp.html

id:dingding

すみません、質問が間違えてました。

(nameに2文字以上の連続するアルファベット)→(nameに2文字以上の連続するアルファベットが含まれる)

です。

.*[a-zA-Z][a-zA-Z].*

とかにすればいいだけなんでしょうか?

2010/03/24 23:51:21
id:p332 No.2

回答回数36ベストアンサー獲得回数3

ポイント35pt

正規表現REGEXPを使うと良いと思います。

下記のwhere句で、

・name列が、アルファベットのみ

・かつ、2文字以上の文字列

という条件になります。

WHERE name REGEXP '^[a-zA-Z]{2,}$'

下記だと、

・2文字(以上)の連続するアルファベット

・その他の部分は任意

となります。

WHERE name REGEXP '[a-zA-Z]{2}'

  • id:GreenStar
    ここも間接回答拒否ぃ~~~!!

    regexp 使えばできるよん!
    http://dev.mysql.com/doc/refman/4.1/ja/regexp.html
    http://dev.mysql.com/doc/refman/5.1-olh/ja/regexp.html
  • id:dingding
    すみません、ありがとうございます。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません