相关疑难解决方法(0)

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

有没有办法在mysql语句中重用计算字段.我收到错误"unknown column total_sale":

SELECT 
    s.f1 + s.f2 as total_sale, 
    s.f1 / total_sale as f1_percent
FROM sales s
Run Code Online (Sandbox Code Playgroud)

或者我必须重复计算,如果我添加了我需要的所有计算,这将产生一个非常长的SQL语句.

SELECT 
    s.f1 + s.f2 as total_sale, 
    s.f1 / (s.f1 + s.f2) as f1_percent
FROM sales s
Run Code Online (Sandbox Code Playgroud)

当然我可以在我的php程序中完成所有计算.

mysql sql mysql-error-1054

62
推荐指数
5
解决办法
4万
查看次数

我可以在MySQL查询中重用一个表达式作为另一个字段的变量吗?

是否有任何解决方法,所以我可以实际做这样的事情而不必重复整个表达式或强制UNION或临时表?

SELECT  (complex expression) AS variable1,
        (complex expression based on variable1) AS variable2
Run Code Online (Sandbox Code Playgroud)

由于mysql的工作方式没有定义variable1并且第2项可用,因此上述概念永远不会起作用.

我要么必须重复变量2的表达式,要么使用UNION或临时表并使用两遍.

是否有一些我不知道的技巧可以更有效地实现这一目标?

(注意我需要知道variable1和variable2的答案,因为它们用于INSERT)

谢谢你的任何想法!

mysql

8
推荐指数
1
解决办法
4263
查看次数

标签 统计

mysql ×2

mysql-error-1054 ×1

sql ×1