У меня есть два набора из 4 входов для оценки в таблице базы данных, один с priority_id
из 19, а другой с priority_id
из 20. Если я запустил sql-запрос ниже в phpMyAdmin, он будет верните значения для поля первичного ключа id
и перечислите их в правильном порядке. Если я запустил свой php-файл и выберем значения для priority_id
19, они отобразятся на экране в правильном порядке. Однако, если я выбираю значения для priority_id
20, значения 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 |
Вы можете показать записи? –
вы уверены, что ORDER BY не будет работать? –
phpmyadmin обычно добавляет порядок, пытается использовать «OPTIMIZE TABLE», иногда он действует странно после многих операций вставки/удаления (также без ORDER BY, результаты указаны в таблице, а не в ID). Также укажите, есть ли у вас первичный ключ. Запустите «EXPLAIN SELECT», чтобы увидеть, использует ли запрос правильный индекс. Использовать PDO, mysql_ устарели по причине. –