php - MySQL 查询仅加载某些项目

标签 php mysql

我目前正在使用此查询将媒体项目与幻灯片项目连接起来,它正在工作并将相应的媒体项目与幻灯片表中的 mediaid 链接起来,但我现在面临的问题是如果幻灯片中没有 mediaid幻灯片表什么也不会出现。

"SELECT slide.*, media.*, slide.id AS slideid
FROM slide JOIN media ON slide.mediaid = media.id
WHERE media.id = slide.mediaid ORDER BY sort ASC"

如何让此查询执行现在的操作,但要列出所有幻灯片结果,即使 mediaid 为 null?

最佳答案

使用LEFT JOIN并删除WHERE子句:

"SELECT 
       slide.*, 
       media.*, 
       slide.id AS slideid
FROM slide 
LEFT JOIN media ON slide.mediaid = media.id
ORDER BY sort ASC"

关于php - MySQL 查询仅加载某些项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28890791/

相关文章:

php - Laravel 5.4 上的示例 PHPUnit 测试失败并返回 404

php - 从用户 ID 的产品 ID 获取 WooCommerce 产品购买日期

mysql - 使用 MySQL 中的三个表填充多对多人物颜色表

MySQL IP 转换 IF 语句不工作 : Illegal mix of collations

mysql - SQL SELECT 行的列上有数字?

mysql - 将大量MySQL数据导入Hadoop

javascript - 不使用id提交

php将字符串(流)转换为图像

php - Laravel 如何在创建 7 天后删除数据库记录

c# - MySQL - 更新查询不影响行