我正在尝试制作一个通知列表,显示来自多种不同内容类型的通知以及各自的数据库表。对于每种内容类型都有一个订阅表,其中包含我需要检索的相应订阅。表和各自的订阅表格如下
--------------------------
content type | subscriptions
-------------+------------
group | subscribegroup
-------------+------------
discussion | subscribediscussion
-------------+------------
forum | subscribeforum
-------------+------------
thread | subscribethread
-------------+------------
我遇到的问题是每个内容订阅表的值都有不同的名称,例如
这就是我如何将一个内容中的数据与一个表及其各自的订阅表一起获取,然后使用UNION但在数据库服务器上并不重要?
SELECT *
FROM thread t
JOIN subscribethread s ON (t.threadid = s.threadid)
WHERE userid= $currentuserid
我如何加入上面其他内容类型的多个实例呢?感谢
答案 0 :(得分:0)
当我们需要组合来自少数表INTO ONE(或更多)行的列时,我们使用JOIN。据我所知,你需要在一个结果表中组合ROWS FROM DIFFERENT TABLES。没有具有这种模式结构的UNION替代方案。