Объединение результатов из нескольких таблиц MySQL и вывод с помощью PHP - PullRequest
1 голос
/ 26 сентября 2011

Используя PHP, я пытаюсь заполнить список HTML данными из двух разных таблиц в базе данных MySQL.Структура каждой таблицы следующая:

Table: "students"
+------------+------------+-----------+---------------+-------+
| student_id | first_name | last_name | city          | state |
+------------+------------+-----------+---------------+-------+
| 1          | Tobias     | Funke     | Newport Beach | CA    |
+------------+------------+-----------+---------------+-------+
| 2          | Bob        | Loblaw    | Laguna Beach  | CA    |
+------------+------------+-----------+---------------+-------+
| 3          | Ann        | Veal      | Bland         | CA    |
+------------+------------+-----------+---------------+-------+


Table: "students_current"
+------------+------------+---------------+
| student_id | school_id  | current_class |
+------------+------------+---------------+
| 1          | umass      | Sr            |
+------------+------------+---------------+
| 2          | ucla       | Jr            |
+------------+------------+---------------+
| 3          | ucla       | Fr            |
+------------+------------+---------------+

Я хотел бы заполнить список только записями, которые соответствуют определенному school_id.

Например, если я хочусписок содержит только студентов, чей school_id равен "ucla", итоговый HTML будет выглядеть следующим образом:

<li>
    <span class="first_name">Bob</span>
    <span class="last_name">Loblaw</span>
    <span class="city">Laguna Beach</span>
    <span class="state">CA</span>
    <span class="current_class">Jr</span>
</li>

 <li>
    <span class="first_name">Ann</span>
    <span class="last_name">Veal</span>
    <span class="city">Bland</span>
    <span class="state">CA</span>
    <span class="current_class">Fr</span>
</li>

Каждый элемент <li> будет привязан к определенному значению student_id из базы данных.,Как мне написать PHP, который будет выбирать / присоединять соответствующие записи из базы данных?

1 Ответ

1 голос
/ 26 сентября 2011

Использование LEFT JOIN:

SELECT *
FROM `students` s
    LEFT JOIN `students_current` sc ON s.`student_id` = sc.`student_id`
WHERE `school_id` = 'ucla'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...