mysql - 将所有链接表条目连接在一行中
问题描述
我一直在尝试获取一个查询,该查询允许我将事件的所有音乐流派(链接表)放在一行中,但到目前为止我一直很不成功;它不断返回 2 行,每行都包含有关事件的相同信息,但在 LEFT JOIN 处更改了音乐流派条目。这是我的查询:
SELECT
events.*
, music_genres_link.*
FROM events
LEFT JOIN music_genres_link
ON events.id = music_genres_link.event_id
WHERE events.id=1
ORDER BY date DESC
这是它返回的内容:
如何将这两行放在一起?我需要genre_title 和genre_id 列。
我想获取整个事件行并左加入结果左侧链接表中找到的所有音乐流派,如下所示:
[事件结果] [music_genre_1 (id, title)] [music_genre_2 (id, title)] 等
解决方案
似乎您有 2 行与加入匹配music_genres_link
。您可以从两个 'gender_id' 值 - 5 和 295 中看到这一点。
好的,现在您已经编辑了您的问题,您想要一些不典型的 SQL。您可以使用PIVOT实现这一点,但您对流派的数量没有限制,我不推荐它。您需要重新考虑您的表格以及您想要实现的目标。
推荐阅读
- java - 在 VS Code 中调试已编译的 Java .class 文件
- java - 在运行 Spring Boot 1.2.5 的嵌入式 Jetty 中禁用 TLS1
- html - 如何在移动设备上堆叠两个 div,但在桌面上并排排列?
- r - 计算距离并添加线条ggplot
- android - 如何“导出保存的数据并将该数据传输到 Android 中的新活动”
- html - 如何修改博客主题
- dart - 在 Flutter 中分享图片 + 文字 + url 的便捷方式
- debugging - 调试器在启动他们的被调试者时如何绕过图像文件执行选项?
- ghost-blog - Ghost API 未添加帖子正文
- javafx - 使用自定义 asString 方法将 simpleStringProperty 绑定到 simpleIntegerProperty