php - 连接来自多个 MySQL 表的结果并使用 PHP 输出

标签 php mysql html join

使用 PHP,我试图用 MySQL 数据库中两个不同表中的数据填充 HTML 列表。每个表的结构如下:

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>项目将绑定(bind)到特定的 student_id来自数据库的值。如何编写将从数据库中选择/加入适当记录的 PHP?

最佳答案

使用LEFT JOIN:

SELECT *
FROM `students` s
    LEFT JOIN `students_current` sc ON s.`student_id` = sc.`student_id`
WHERE `school_id` = 'ucla'

关于php - 连接来自多个 MySQL 表的结果并使用 PHP 输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7548884/

相关文章:

php - 如何最好地将 CakePHP 日期选择器表单数据转换为 PHP DateTime 对象?

php - 在 PHP 中从 CSV 创建多维关联数组

mysql - 列出每个工作人员处理的属性(property)数量

html - 在 float 图像上叠加下拉菜单

php - 自动刷新无限div

php - 正则表达式检查路径是否只向下

mysql - 从 MySQL 中选择 N 个特定的表

java - Spring JDBC 中区分唯一键约束异常和主键约束异常

javascript - 如何将 Ajax Json 响应附加到 html?

javascript - CSS Transitions 在参数化函数中不起作用