Итак, у меня есть таблица MySQL, которую я создал с помощью PHPMyAdmin.На самом деле я пишу приложение с PHP (Codeigniter) и MySQL, которое позволяет пользователю просматривать таблицы SQL, добавлять значения или удалять строки, добавлять фильтры, ... Проблема в том, что эта конкретная таблица SQL имеет внешний ключ, и поэтому столбецбыл автоматически проиндексирован.Когда я делаю запрос «SELECT *», я могу получить и распечатать всю таблицу на моей веб-странице.Но когда я пытаюсь выбрать только столбец первичных ключей, строки, в которых есть значения в индексированном столбце, не отображаются.Например, если первая и вторая строки имеют значения в индексированном столбце, первая строка, показанная в результате оператора «SELECT id», будет третьей в таблице.
Я думал, что этосначала проблема с моим кодом, но кажется, что это поведение воспроизводится в phpmyadmin при попытке выполнить тот же SQL-запрос.
SELECT * FROM table;
дает
| id | col1 | col2 | indexed_col |
| 1 | value | value | value |
| 2 | value | value | value |
| 3 | value | value | null |
| 4 | value | value | null |
и так далее.Но это:
SELECT id FROM table;
дает
| id |
| 3 |
| 4 |
Я не очень понимаю это поведение.Возможно, я что-то упустил, но если кто-то сможет объяснить, почему это так, или найти решение, я был бы рад.
ОБНОВЛЕНИЕ
Мой SQLстол был, вероятно, сломан, не знаю почему, я просто воссоздал один.Проблема решена