2番目のwhere句を追加すると、これまでうまく動作していた以下のクエリがあります。sqlが2番目の値を取得しない
$query = "SELECT exam_venue AS venue FROM application WHERE level_apply = '".$levelappy."' and city_applied = '".$city."' GROUP BY venue HAVING COUNT(id) < 20 LIMIT 1";
$class = mysql_query($query);
if (!$class) { // add this check.
die('Invalid query: ' . mysql_error());
}
$row = mysql_fetch_array($class);
$class1 = $row['venue'];
dd($class1);
上記のコードは、nullを返しますが、データベース内で同じクエリを実行しようとするとそこにデータがあります。私はクエリの2つの変数のデータを持っていますが、なぜクエリが都市を全く取っていないのかわかりません。都市がなければ結果が得られますが、都市を追加するとnullが返されます。
私は任意の変数を追加することなく、同じクエリをしようとした場合でも、データベースにそれは会場=「1A-1」
SELECT exam_venue AS venue FROM application WHERE level_apply = '1' and city_applied = 'Prishtinë' GROUP BY venue HAVING COUNT(id) < 20
「mysql_」APIをもう使用しないでください。 [MySQLi](http://php.net/manual/en/book.mysqli.php)または[PDO](http://php.net/manual/en/book.pdo.php)の準備文を使用してください。 – PeterMader
これを一度使ってください$ query = "SELECT exam_venue AS会場のアプリケーションからどこにlevel_apply = $ levelappyとcity_applied = $ city GROUP BY会場HAVING COUNT(ID)<20"; – Exprator
私はLIMIT 1を使用します。最初の行がほしいからです。 –