-1

データベース テーブルに 4 つの評価入力のセットが 2 つあります。1 つpriority_idは 19 で、もう1 つpriority_idは 20 です。phpMyAdmin で以下の SQL クエリを実行すると、id主キー フィールドの値が返され、正し注文。PHP ファイルを実行してpriority_id19 の値を選択すると、正しい順序で画面に表示されます。ただし、20 の値を選択するとpriority_id、id 値が奇妙で不合理な順序で画面に表示されます。これを引き起こしている可能性のあるアイデアはありますか?SQLクエリにを追加しようとしましたorder byが、役に立たないようです。

$input_ids = array();

$query = "SELECT * FROM rating_inputs WHERE priority_id = '20'";
echo $query . "<br/>";

$result = mysql_query($query);
$z=0;
while($row=mysql_fetch_assoc($result)){
    $input_ids[$z] = $row['id'];
    echo "input id: " . $input_ids[$z] . "<br/>";
    $z=$z+1;
}

これらは私のデータベース フィールドとそのデータです。現在、値フィールドは空です。

ID | プライオリティ ID | カテゴリ ID | 価値

53 | 19 | 1  |
54 | 19 | 4  |
55 | 19 | 10 | 
56 | 19 | 11 | 
57 | 20 | 1  | 
58 | 20 | 4  | 
59 | 20 | 10 | 
60 | 20 | 11 | 
4

1 に答える 1

2

データベース内のレコードには固有の順序はありません。それらが取得される順序は、すべての意図と目的に対してランダムです。それらが特定の順序である場合、それはたまたまその順序で格納されたか、その順序でインデックスに遭遇したためです。

特定の順序が必要なORDER BY場合は、クエリで句を使用します。

于 2013-03-07T15:13:39.263 に答える