我正在 Build 一个社交网站,无法决定从各种表中获取数据的最佳方式是在Feed中显示 . 每次存储某些内容时,它都会存储一个时间戳,因此我想知道从时间戳排序的各种不同表中检索数据的最佳方法,每页限制为20个结果 . 理想情况下,我希望mysql查询所有不同的表并订购并限制它,但因为不同的表并非都是必然相关的,并且需要返回不同的数据,具体取决于表的用途我不认为这是将成为可能 . 我当然可以单独查询每个表,但是如何将所有信息排序和排序到页面中,以便所有不同的实体一起放在一个有序列表中 . 我使用的服务器端语言是带有codeigniter框架的PHP .
有人有任何想法吗?
1 回答
你能为所有单独的表中返回的内容 Build 一个通用格式吗?例如,您可以编写一个返回FeedTitle,FeedSummary和Timestamp的查询:
不确定my-sql语法,这将在SQL Server中工作,应该非常相似 . 无论如何它只是伪代码,我们的想法是你在数据库中做一些应用程序逻辑,以便有希望获得性能提升(所以你不必在PHP中对大量数据进行排序) .
另一种方法是从每个表中返回最后20个,并让客户端对它们进行排序 . 因此,将它们全部发送到UI并让jQuery代码显示前20,然后让用户动态选择Feed类型,他们会看到任何一种类型或任何类型组合的前20个故事 .