gpt4 book ai didi

sql - 组合来自不同表的数据以形成新闻提要

转载 作者:搜寻专家 更新时间:2023-10-30 23:24:23 25 4
gpt4 key购买 nike

假设我有 2 个表,消息和产品。每当用户发布新产品或消息时,订阅该特定用户的用户将更新他们的提要。这类似于 Facebook 提要。

问题是如何组合来自 2 个不同表(消息和产品)的记录来制作新闻提要,提要必须按发布日期排序。

我认为使用纯 SQL 很难完成,或者我可能需要另一个表并在创建新产品或消息时插入新行?

感谢阅读,希望能在这里得到一些帮助,thnx!!

最佳答案

找到messageproduct 的共同点,例如它们都是post 的类型,因此您可以这样:

post_model_01

帖子表具有所有帖子共有的列; message 和 product 表只有各自特定的列。


更新

获取消息(2009-11-10 15:00后修改)

SELECT * 
FROM Message AS m
JOIN Post as AS p ON p.PostID = m.PostID
WHERE p.LastChanged > '2009-11-10 15:00'

获取商品(2009-11-10 15:00后修改)

SELECT * 
FROM Product AS d
JOIN Post as AS p ON p.PostID = d.PostID
WHERE p.LastChanged > '2009-11-10 15:00'

在不适用于消息或产品的列中使用 NULLS 获取所有信息。

SELECT * 
FROM Post AS p
LEFT JOIN Message AS m p.PostID = m.PostID
LEFT JOIN Product AS d ON p.PostID = d.PostID
WHERE p.LastChanged > '2009-11-10 15:00'

关于sql - 组合来自不同表的数据以形成新闻提要,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1734829/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com