如果用户想要在他的一些项目中添加一个“生日”参数,我们会在参数表中添加一个参数,然后在值表中为他想要拥有此参数的每个项目添加一个条目,日期在datevalue列中,所有其他'value‘字段保留为空。要按"Date of birth“对他的项目进行排序,假设此参数为parameter_id=1,我将这样做items
join values on items.item_id
但通常情况下,过滤后的项目需要按某个字段排序。例如,当您按tag on SO过滤问题时,您将对结果进行排序。这会导致使用临时表和文件排序,这反过来又会导致执行时间变慢。我想出的解决方案是将排序字段反规范化到taggeditem表,这样我就可以在taggeditem上创建索引(tag_id, item_rating)。
我在SO上搜索过类似的问题,只找到了这个:。将一堆排序字段反规范化到标签项,比如created,rating,这是一种好的做法吗?这样你