我在數據庫表中有兩組4個評級輸入,其中一個的priority_id
爲19,另一個的priority_id
爲20.如果我在phpMyAdmin下面運行sql查詢,它會返回id
主鍵字段的值並按正確的順序列出它們。如果我運行我的php文件並選擇priority_id
19的值,它們將以正確的順序顯示在屏幕上。但是,如果我選擇priority_id
的值,則會以奇怪的非理性順序顯示id值。任何人都有想法可能會造成這種情況?我已經嘗試將order by
添加到sql查詢中,但這似乎沒有幫助。PHP MySQL查詢以奇怪的順序顯示結果
$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 | priority_id | category_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 |
你能顯示記錄嗎? – 2013-03-07 15:11:35
你確定ORDER BY不起作用嗎? – 2013-03-07 15:13:02
phpmyadmin通常會添加一個命令,嘗試使用「OPTIMIZE TABLE」,有時它會在許多插入/刪除操作後出現異常(也沒有ORDER BY結果以表格順序不是ID)。同時說明您是否有主鍵。運行「EXPLAIN SELECT」查看查詢是否使用了正確的索引。由於某種原因,不推薦使用PDO,mysql_。 – 2013-03-07 15:16:56