0

データベースから過剰な行が選択されています。ただし、データをフィルタリングしようとすると、AND lt_num何も選択されません。何が問題なのですか?

$w = $_POST['pal_num'];
$w = "'".implode("','",$_POST['pal_num'])."'";
$r = mysql_query("SELECT * FROM pl_tab WHERE pal_num AND lt_num in (".$weights.");");
4

1 に答える 1

0

私の推測では、次のような 2 つの比較を行う必要があります。

SELECT 
    * 
FROM 
    pl_tab 
WHERE 
    pal_num in (".$weights.")
    AND lt_num in (".$weights.");

column1 and column2 = 3たとえば、言うことはできません。両方が 3 に等しい行が必要な場合column1=3 and column2=3は、クエリで を使用する必要があります。

また、私がしばらく前に書いたこの Q&A を読みたいと思うかもしれません。この Q&Aは、多くの基本的な SQL クエリをカバーし、そこから拡張しています。

編集:

クエリにある場合$weightsは、どこかに設定しますか、それともここに表示する変数にあるものにしたいですか:

$weights = $_POST['pal_num'];
$weights = "'".implode("','",$_POST['pal_num'])."'";

これはあなたが意味したものですか?

于 2013-09-01T05:42:17.860 に答える