我正在研究某种主题列表。它可以有多个主题,每个主题可以有多个子主题。如果您愿意,也可以为每个子主题投票,但我不认为这与该问题相关。
所以我的两个相关数据库表是topics
和subtopics
。
以下是它们的简化版本:
CREATE TABLE topics (
id INTEGER PRIMARY KEY AUTO_INCREMENT NOT NULL,
name VARCHAR(1000) NOT NULL
);
CREATE TABLE subtopics (
id INTEGER PRIMARY KEY AUTO_INCREMENT NOT NULL,
title VARCHAR(1000) NOT NULL,
topic_id INTEGER NOT NULL,
FOREIGN KEY(topic_id)
REFERENCES topics(id)
);
我想添加标记子主题的可能性,它是优先级的,但每个主题应始终只有一个优先副主题。
你对如何实现这一点有什么建议吗?
我的想法是向subtopics
添加另一个带有时间戳的字段,当您将其标记为优先级时,该时间戳会更新为当前时间。选择条目时,您只需查找最新的时间戳。
还有其他(更好)的可能性吗?
我正在使用PHP和MySQL
答案 0 :(得分:0)
您必须在子主题表中添加三个字段优先级,投票,时间戳。
优先级字段为0或1,表示1为proritized,0为not。 投票将是0或1,这意味着1是喜欢的,0是不喜欢的。 timestamp包含将子主题标记为优先级的时间。
答案 1 :(得分:0)
我想我会从上面提出自己的想法:
我的想法是向
subtopics
添加另一个带有时间戳的字段,当您将其标记为优先级时,该时间戳会更新为当前时间。选择条目时,您只需查找最新的时间戳。