2016-10-04 2 views
0

タイトルでわかるように、私は持っているウェブサイトで使いたいテーブルがあります。MySQL SELECT * FROMテーブルWHERE名前LIKE(?)ORオーナーLIKE(?);

これは、MySQLの文は、今どのように見えるかです:私のウェブサイト上でSELECT * FROM bth_nav WHERE name LIKE (?) OR owner LIKE (?);

私は名前または所有者を検索するかしたいです。今は名前だけは検索できますが、所有者は検索できません。これが私が助けを求めている理由です。私はそのステートメントを書き直そうとしましたが、私はそのうちの1つしか検索できません。

ありがとうございます。

答えて

1

答えは、あなたが期待するもう少し複雑になります。

あなたの質問に疑問符が表示されています。この方法では、準備ができています(これは良いことです)。
あなたの古いステートメントは1つの値(名前として)を使用していましたが、今度は2を使用したいと考えています。

これはいくつかのオプションがあります。

最も簡単な1を使用すると、値の2倍を結合することになるが、それは素敵な方法ではありません。

より良い方法は、このように、あなたのパラメータに名前を付けるために、次のようになります。

SELECT * FROM bth_nav WHERE name LIKE (:nameOwner) OR owner LIKE (:nameOwner); 

そこで私はここで両方のパラメータに同じ名前を使用すること。今度は、bindValueという名前のパラメーターに値をバインドすることができます。これは1回だけ行う必要があります。

+0

おかげで、魔法のように動作します。 –

関連する問題