0

フィールドを持つデータベースがありUnique ID、その中に 2 つの行があり、どちらも整数です。最初の行には value が3あり、2 番目の行には があります4。このスクリプトの目的は、値が最も高いものを見つけることですが、それはecho「一意の ID」に過ぎません。

コードは次のとおりです。

<?php
$connection = mysql_connect("localhost","root");

if(!$connection) {
die("Connection Failed" . mysql_error());
}
mysql_select_db("rewiredstate",$connection);
$max="SELECT MAX('Unique ID') as id FROM topics";
$maxquery= mysql_query($max) or die (mysql_error());
while($row = mysql_fetch_assoc($maxquery)) {
echo $row['id'];
}
?>

何が問題なのか、誰にも考えがありますか? どんな助けでも大歓迎です。ありがとう

4

2 に答える 2

4

別の引用符が必要だと思います-'ではなく'

于 2012-08-06T19:38:22.393 に答える
0

次のように、一意のIDを囲む引用符を削除します。

$max="SELECT MAX(Unique ID) as id FROM topics";

クエリの間違いは、MAX関数のフィールド名の前後に間違った引用符を使用していることです。クエリに従って、MAX関数にはパラメータとして文字列が与えられ、テーブル内の実際のフィールド値と比較されません。そのため、結果に一意のIDが返されます。

MAX()を使用する必要がありfieldます。または、MAX(field)のように、引用符をまったく使用しないように選択することもできます。しかし、確かにMAX('field')ではありません。

于 2012-08-06T19:51:07.117 に答える