MySQL のSQL 文を PHP から書く場合についての質問です。テキストの中に、='XX01' や、="XX01"というのがあったら抽出したいのですが、どう書くといいのでしょうか? textcontent like "%='XX01'%" とかけばいいのでしょうか? さらに ='XX01' . "\n" などとなっていた場合には、どう書けばいいのでしょうか?

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

回答2件)

id:GreenStar No.1

回答回数192ベストアンサー獲得回数46

ポイント35pt

http://dev.mysql.com/doc/refman/4.1/ja/string-syntax.html

textcontent like '%=''XX01''%'
textcontent like '%=''XX01''."\n"'  \nで終わる場合
textcontent like '%=''XX01''."\n"%' \n以降にも何か続いている可能性がある場合
id:iww No.2

回答回数101ベストアンサー獲得回数10

ポイント35pt
SELECT * FROM hoge WHERE textcontent LIKE "%='XX01'%" OR textcontent LIKE '%="XX01"%';

みたいな感じでどうでしょうか。


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

MySQLの正規表現には後方参照が無いので

SELECT * FROM hoge WHERE textcontent REGEXP "=([\"'])XX01\1";

のようなことはできないようです。

  • id:taknt
    ' や"は、記述の仕方があるから注意。
    って 回答欄が有効になってないや。
  • id:GreenStar
    質問文を少し読み違えてる部分がありました。iwwさんの回答のほうが正解ですね。
    ごめんなさい。

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

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

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

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