mysql - 根据已知 ID 连接多个表

标签 mysql join

我有多个(13 个)表,它们有一个共同点:它们的 ID。

要点是,我需要查询单个 ID 的结果(每个表可以从无到多个),并返回具有该 ID 的所有结果 - 它不是 UID。

我有一个表,它应该/可能是其他表连接的“起点”,并且在每种情况下都存在受质疑的 ID。

不想发布我迄今为止尝试过的内容 - 我想避免笑声。阅读我在 Mysql 中写的内容就像是看到一个 child 迈出第一步。可爱又……有趣。

感谢您的任何提示、建议和好的评论!

最佳答案

据我了解,您有一个包含 ID 值的父表和许多应连接到父表的类似子表。检查这个查询。是你想要的吗?

SELECT * FROM parent_table t
LEFT JOIN child_table1 t1
  ON t.id = t1.id
LEFT JOIN child_table2 t2
  ON t.id = t2.id
...
LEFT JOIN child_table<n> t<n>
  ON t.id = t<n>.id

或者这个变体;在这种情况下,所有子表都将按行返回 -

SELECT * FROM parent_table t
LEFT JOIN (
  SELECT * FROM child_table1
  UNION ALL 
  SELECT * FROM child_table2
  UNION ALL 
  ...
  SELECT * FROM child_table<n>
  UNION ALL
) t1
ON t.id = t1.id

关于mysql - 根据已知 ID 连接多个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7252472/

相关文章:

Android SQLite 连接查询

Mysql数据库同步

MySQL datamapper 适配器正在链接查询而不是连接

php - mysql连接表限制特定表

mysql - MariaDB 中表连接的最大数量是多少?

C# 连接两个数组的字符串

MySQL:每天每条记录的分组结果

php - UTF-8贯穿始终

php - Cakephp 3.0 中的自定义查询?

php - 为什么在 Laravel 中查询异常更新数据?