我正在尝试为一个不动产网站中的给定房产选择十大最相似的房产,我想知道你们是否可以帮助我。我正在使用的变量是price(int),area(int),bathroom(int),bedroom(int),suites(int),parking(int)。目前我正在考虑通过ABS(a-b)进行排序,但如果我每次查看某个房产时都必须计算这个数字,那会不会很慢? (我不确定我可以缓存这个,因为数据库不断更新)还有其他选择吗?
感谢您的帮助!
答案 0 :(得分:2)
一种解决方案可能是创建一个包含结果就绪的新表。像这样: -
property_id similar_properties_ids
--------------------------------------
1 2,5,8
2 3,10
...
...
一个cron定期运行,计算所有属性并填充similar_properties_ids
。
因此,在运行时,您没有计算开销,但缺点是您得到的结果有点旧(在上一次cron运行期间更新)。