开发者社区> 问答> 正文

我可以在SELECT查询中重用计算字段吗??mysql

有没有一种方法可以重用mysql语句中的计算字段。我收到以下错误信息:“ unknown column total_sale”:

SELECT s.f1 + s.f2 as total_sale, s.f1 / total_sale as f1_percent FROM sales s 还是我必须重复计算,如果我添加了所有需要的计算,这将导致很长的SQL语句。

SELECT s.f1 + s.f2 as total_sale, s.f1 / (s.f1 + s.f2) as f1_percent FROM sales s 当然,我可以在我的php程序中进行所有计算。

展开
收起
保持可爱mmm 2020-05-17 21:08:35 1403 0
1 条回答
写回答
取消 提交回答
  • 是的,您可以重用变量。这是您的操作方式:

    SELECT @total_sale := s.f1 + s.f2 as total_sale, s.f1 / @total_sale as f1_percent FROM sales s 在此处了解更多信息:http : //dev.mysql.com/doc/refman/5.0/en/user-variables.html

    [注意:此行为是不确定的。根据MySQL文档:]

    通常,永远不要为用户变量分配值,并且不要在同一条语句中读取该值。您可能会得到预期的结果,但这不能保证。来源:stack overflow

    2020-05-17 21:15:03
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
One Box: 解读事务与分析一体化数据库 HybridDB for MySQL 立即下载
One Box:解读事务与分析一体化数据库HybridDB for MySQL 立即下载
如何支撑HTAP场景-HybridDB for MySQL系统架构和技术演进 立即下载

相关镜像