数据库计算字段、文本函数、日期函数与数值函数应放在查询层还是业务层
简答题中等706 次浏览
参考答案与解析
# 核心结论
数据库计算字段和内置函数适合完成贴近数据、能够批量执行且语义稳定的转换;复杂展示逻辑、国际化格式及频繁变化的业务策略通常更适合放在业务层。判断依据不应只是“数据库是否支持该函数”,而应考虑表达式是否参与筛选、连接、排序或分组,是否影响索引使用,是否依赖时区和排序规则,结果能否复用,以及计算压力是否会集中在数据库。数据库层适合保证集合计算的一致性,业务层则更便于测试、迭代和横向扩展。
# 底层机制
表达式可以出现在投影、WHERE、ORDER BY、GROUP BY 和连接条件中。投影里的 price * quantity AS amount 通常只需对候选结果计算;但在索引列上包裹函数,例
