我已经尝试了一段时间。我尝试了 UNION 和假(一左一右连接)完全连接。我对 sql 不是很好,所以也许我偶然发现了解决方案,但做错了。
对于这个例子,我有三个表(我可能有更多的时间)。
post:
----------------------------
| type | rel_id | id |
----------------------------
| video | 2 | 51 |
|----------------------------|
| text | 1 | 50 |
----------------------------
video:
----------------------------
| id | video_url | title |
----------------------------
| 2 | ... | ... |
|----------------------------|
| 1 | ... | ... |
----------------------------
text:
----------------
| id | contend |
----------------
| 2 | ... |
|----------------|
| 1 | ... |
----------------
post表是主表。类型字段显示要加入的表。字段 rel_id 表示要连接到哪一行。
我可以使用这样的一些输出:
------------------------------------------
| id | type | video_url | title | contend |
------------------------------------------
| 51 | video | ... | ... | NULL |
|------------------------------------------|
| 50 | text | NULL | NULL | ... |
------------------------------------------
最后一个问题是最后一个 WHERE 子句需要是空闲的,以便我可以使用它来搜索所有结果。