mysql - 如何将 SQL 结果转换为百分比
问题描述
我试图找到过去 7 天的百分比增长,但我有点卡住了。目前在我创建的 SQL 查询中,您可以获取最近 7 天的新帐户总数。但是现在,我该如何改进才能以百分比返回结果?
这是到目前为止完成的 SQL 查询。
谢谢
SELECT COUNT(DISTINCT account_type)
FROM account
WHERE date_created > NOW() - INTERVAL 7 DAY
解决方案
使用临时表,您可以执行以下操作:
create temporary table storeCount IF NOT EXISTS (
oldCount INT(10) not null,
newCount INT(10) not null
);
insert into percentage (oldCount,newCount)
values
(SELECT COUNT(DISTINCT acc1.account_type)FROM account acc1, SELECT COUNT(DISTINCT acc2.account_type)
FROM account acc2 WHERE acc2.date_created > NOW() - INTERVAL 7 DAY);
select ((newCount/oldCount)*100) as percentage from storeCount;
drop temporary table IF EXISTS storeCount;
推荐阅读
- makefile - 构建 AWS IoT 开发工具包时出现错误“源目录 ... 似乎不包含 CMakeLists.txt”
- java - 启用 ThriftParquetWriter 将 16 位整数写为短整数,而不是将其转换为 32 位整数
- python - 如何使全局变量在函数内部的 Spyder 中工作?
- laravel - 致命错误:已用完允许的 134217728 字节内存大小(尝试分配 53091665 字节)-Linode 服务器图像上传
- http - 如何在 POST 中的 JSON 中发送 JSON
- java - AIX - 无法创建 VM 线程。系统资源不足
- scala - 如何在 Play 框架的 Scala 模板中的 if 块中添加多个“OR”和“AND”条件
- llvm - 从分支指令中提取 MachineBasicBlock
- sql - Oracle Db:查询 Ctx_Ddl 首选项
- javascript - 如何将右键单击对话框上的画布保存为 jpg