说我有3张桌子:
reviews | paid, received_feedback (booleans)
payments | review_id
feedback | review_id
执行性能跳转是否值得(psuedo-SQL演示):
select from reviews where paid = 1
VS
select from reviews, joins payments where payments.review_id = reviews.id
答案 0 :(得分:2)
我确信使用标记列
会有性能跳转
你是对的:删除连接通常会提高性能
但值得打扰吗?
由您决定:如果您的程序必须处理的记录数量巨大,并且您必须经常这样做,那么添加标志是有意义的。否则,将旗帜保持在正确状态将是一项持续的维护责任。
你还应该考虑你的程序花在维护这些标志上的时间:如果标志经常更改,这次可能会减少首先引入标志的节省。