[前][次][番号順一覧][スレッド一覧]

mysql:3109

From: とみたまさひろ <とみたまさひろ <tommy@xxxxxxxxxx>>
Date: Sat, 27 Jan 2001 00:33:28 +0900
Subject: [mysql 03109] Re: ” % ”で検索

とみたです。

[岩田 雅人 <iwata@xxxxxxxxxx>さんが]
["[mysql 03108] ” % ”で検索 " で曰く]

> SELECT文で例えば
> 
> select * from database where name like '%my%';
> 
> としたとき”my”を含むものにヒットしますが、この文の
> %my%の部分って他にどんなものがありますか?

ワイルドカード文字が "%" の他に何があるかって意味でしょうか。
マニュアルの 7.4.6 に書かれてますが、

  LIKE には2つのワイルドカードがあります:
    ┌─┬──────────────────────────┐
    │% │任意の数の文字(0文字も含む)に適合します。           │
    ├─┼──────────────────────────┤
    │_ │厳密に1つの文字に適合します。                       │
    └─┴──────────────────────────┘


> ”%”って文字を検索する場合って
> 
> select * from table2 where name like '%"%"%';
> 
> でいいんですよね?

いえ、「like '%\%%'」です。やはりマニュアル 7.4.6 に

    ワイルドカード文字のテストをするためには、エスケープ文字よ
    り先行しておこなってください。 ESCAPE を指定しない場合は、
    文字 '\' が使われます:
    ┌──┬────────────────────────┐
    │\%  │1つの % に適合します。                          │
    ├──┼────────────────────────┤
    │\_  │1つの _ に適合します。                          │
    └──┴────────────────────────┘

…とあります。

---
とみたまさひろ <tommy@xxxxxxxxxx>
日本MySQLユーザ会 http://www.mysql.gr.jp

[前][次][番号順一覧][スレッド一覧]

      3108 2001-01-26 19:30 [岩田 雅人 <iwata@xx] ” % ”で検索                           
->    3109 2001-01-27 00:33 ┗[とみたまさひろ <tomm]