mysql - 根据别名 : SQL 进行划分

标签 mysql mysql-workbench

希望将“返回”列和“总计”列分开,以获得最多返回产品的返回率。这是我所拥有的,如何在别名上添加除法函数?

SELECT brand
    ,model
    ,count(*) Total
    ,sum(case when returned = 'Y' then 1 else 0 end) as Returned
    ,sum(case when returned = '' then 1 else 0 end) as Kept

FROM table
WHERE year= '2018'
AND NOT type = 's'
GROUP by model

ORDER by Returned DESC;

谢谢

最佳答案

您可以将其包装在另一个SELECT

SELECT brand
    ,model
    ,count(*) Total
    ,sum(case when returned = 'Y' then 1 else 0 end) as Returned
    ,sum(case when returned = '' then 1 else 0 end) as Kept
    ,(SELECT Returned/Total) as Rate
FROM table
WHERE year= '2018'
AND NOT type = 's'
GROUP by model
ORDER by Returned DESC;

关于mysql - 根据别名 : SQL 进行划分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48069532/

相关文章:

c# - 是什么导致了这个 MySql.Data.MySqlClient.MySqlException? C#

php - MYSQL 5.5.50 和 5.7.13 的区别

PHP 按姓名和姓氏或中间名搜索

mysql - 如何组契约(Contract)一个表中的两列并计算其唯一出现次数

mysql - 设置默认数据库连接 Mysql Workbench 5.2

用于更新多个重复字段条目的 MYSQL 查询

mysql - 无法更新 MySQL 中的表,我正在使用工作台

mysql - 在mysql管理员中设置用户名和主机名时出错

mysql - 一次 2 个 mysql 查询

MySql 使用外键更新条目