誰かを編集して、受け入れられる答えを削除しました:(問題の解決策は、次のような関数を使用することでした:
ifnull(trees.primarycolor, '') LIKE %,
質問の開始: こんにちは、インターネットの友人、家族、同僚、見知らぬ人。私は、そこにいるウェブマスターを興奮させること間違いなしの苦境を抱えています.
私のクエリは次のとおりです。
$result = mysql_query("SELECT trees.*
$bottom_query
FROM trees
INNER JOIN price
ON trees.ID=price.treeid
where trees.primarycolor like
'$primary_color'
and trees.secondarycolor like
'$secondary_color'
and trees.fallcolor like
'$fall_color'
and trees.droughtresistant like
'$drought_resistant'
and trees.height like
'$height'
and trees.spread like
'$spread'
and trees.trunkcolor like
'$trunk_color'
and trees.flowering like
'$flowering'
and trees.fruitproducing like
'$fruit_producing'
");
$var_name は、red、green、true、false などの文字列、またはワイルドカード % のいずれかです。
実際に出力されるクエリは次のとおりです。
SELECT trees.* , price.10mm , price.20mm FROM trees INNER JOIN price ON
trees.ID=price.treeid where trees.primarycolor like '%' and trees.secondarycolor like '%'
and trees.fallcolor like '%' and trees.droughtresistant like '%' and trees.height like
'%' and trees.spread like '%' and trees.trunkcolor like '%' and trees.flowering like '%'
and trees.fruitproducing like '%'
私の問題は、WHERE 句にすべてのワイルドカードを使用しても、クエリが結果を返さないことです。
私は PHP と HTML を使用しています。どのバージョンかはわかりませんが、おそらく最新のものです。
% を * として使用して、データベース内の任意のタイプのものをすべて選択したいと考えています。
私を助けてくださいインターネットの善良な人々、そして栄光はあなたのものになるでしょう:D