1

考虑这样的模板(下面发布的问题):

替代文字

假设我发布了一篇关于 Superbowl 的文章并将其标记在“体育”类别中。在我的文章表中,我有一个标记为特色与否,以及一个标记为主要文章。因此,如果我检查主要标志,它会显示为主要文章。如果我在一天后发布另一篇主要文章,它将从主要特色区域#1 中消失,除非我删除最新的主要文章,否则它将不会出现在区域#2 或区域#3。

问题 #1:我可以通过检查主要文章和特色文章来更新我的区域 #2 的 SQL 逻辑来解决这个问题,并清除最后一篇主要文章,如果我希望它发生变化,这是否是处理这种情况的理想方法到常规的特色文章?

问题 #2:但是如果我完全基于最新发布的 sql 逻辑,并且用户想要指定一篇文章作为主要特色而不考虑日期,我应该为此添加额外的逻辑吗?因此,例如,在整个文章表中一次只能有一个主条目。或者我应该强制用户更新文章日期,因此要求主要是最新发布的?

问题 #3:假设我的 Superbowl 文章从主要文章变为第一个、第二个、第三个、第四个专题文章后,我希望它作为“体育”下的第一篇文章出现在我的类别列表中 - 为此我需要要取消设置主要和特色标志,在我的文章提交代码中添加代码以一次只有 4 个特色和 1 个主要标志是否有意义?显然,如果一个被删除,那么它就不能向后移动。

非常感谢有关处理组织和显示逻辑的任何建议。

4

1 回答 1

1

如果您按顺序调用这些查询,为什么不做一个

NOT IN ([ids that have already been used])

即,一旦你选择了你的主要文章,你就指定了 id 不应该出现在特色选择中。那么特色 id 和主要 id 不应该出现在文章列表中。

希望这是有道理的。

于 2010-02-08T16:26:47.520 回答