Отображение в PHP данных из 2 таблиц в MySQL - PullRequest
2 голосов
/ 12 марта 2019

У меня есть две таблицы

users
student_id username
         1 Alex
         2 Tom
         3 Max

answers
exercise_done student_id
            4          1
            5          1 
            6          2

В таблице 'users' перечислены имена пользователей с соответствующим идентификатором.Я пытаюсь отобразить все данные из таблицы 'answers' в php, но в столбце student_id я хотел бы отобразить имя пользователя.Я знаю, как отобразить таблицу «ответы», но я бы хотел показать в столбце student_id имя пользователя.Для отображения таблицы «ответы» это то, что у меня есть:

$query = "SELECT exercise_done, student_id from answers";
$result = $conn->query($query);

Ответы [ 3 ]

1 голос
/ 12 марта 2019

Мы называем это присоединением:

SELECT A.exercise_done, U.student_id, U.username
FROM answers AS A
JOIN users AS U
    ON U.student_id = A.student_id

Вот почему в реляционной модели вам нужны уникальные внешние ключи в таблицах. С ними вы можете делать вступление вот так.

Есть несколько типов соединений, но этот подходит вам.

1 голос
/ 12 марта 2019

Вы можете сделать это с помощью внутреннего соединения.

select username, exercise_done from users u JOIN answers a ON u.student_id=a.student_id;
1 голос
/ 12 марта 2019

Вам необходимо объединение:

SELECT exercise_done, username
FROM   answers a
JOIN   users u ON a.student_id = u.student_id
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...