SQL计算出百分比
有clients和lead_sources俩表。mysql数据库。
lead_sources表结构类似:

clients表中的lead_source_id是外键。现在要统计某时间段内client内每种lead_source所占百分比
select
a.L_name,
ROUND((a.L_sub_count*1.0/b.total_count*100),1) as perTotal,
a.L_sub_count,
b.total_count
from
(
SELECT LeadSource.name as L_name, count(*) as L_sub_count
FROM clients as Client,lead_sources as LeadSource
where
Client.lead_source_id = LeadSource.id
and LENGTH(Client.lead_source_id) > 0
and Client.created_date BETWEEN '2012-09-01' AND '2012-11-01'
GROUP BY LeadSource.`name`
order by L_sub_count desc
) a,
(
select count(*) as Total_count FROM clients as Client,lead_sources as LeadSource where
Client.lead_source_id = LeadSource.id
and LENGTH(Client.lead_source_id) > 0
and Client.created_date BETWEEN '2012-09-01' AND '2012-11-01'
) b;
这个SQL有三个select,所以看成三部分,我的理解,后两个是构造虚表和字段。目的就是用于第一个select的查询。
结果类似:

SQL计算出百分比的更多相关文章
- sql语句计算出每个月的天数
原文:sql语句计算出每个月的天数 从当前月-11个月开始,到当前月为止,用一个sql语句计算出每个月的天数. SELECT TO_CHAR(ADD_MONTHS(SYSDATE,-LEVEL+1 ...
- SQL 计算列
SQL计算列,可以解决一般标量计算(数学计算,如ColumnA*ColumnB)的问题,而子查询计算(如select sum(salary) from tableOther where id=’ABC ...
- PHP版根据经纬度和半径计算出经纬度的范围
百度地图提供了范围搜索的功能,但是它使用的是百度自己的数据,但是有时候我们需要使用自己的数据,显示在地图上.比如给定两个参数:指定位置(某一处的经纬度lnglat)和搜索半径(r),搜索指定范围内的数 ...
- 使用SQL计算宝宝每次吃奶的时间间隔
需求:媳妇儿最近担心宝宝的吃奶时间不够规律,网上说是正常平均3小时喂奶一次,让我记录下每次的吃奶时间,分析下实际是否偏差很大,好在下次去医院复查时反馈给医生. 此外,还要注意有时候哭闹要吃奶,而实际只 ...
- 使用SQL计算宝宝每次吃奶的时间间隔(数据保障篇)
目前程序从功能上其实已经完全满足客户(当然我这里的客户都是指媳妇儿^_^)需求,具体可参考: 使用SQL计算宝宝每次吃奶的时间间隔 使用SQL计算宝宝每次吃奶的时间间隔(续) 那么本篇 使用SQL计算 ...
- MySQL GROUP_CONCAT函数使用示例:如何用一个SQL查询出一个班级各个学科第N名是谁?
如何用一个SQL查询出一个班级各个学科第N名是谁? 首先贴出建表语句,方便大家本地测试: -- 建表语句 CREATE TABLE score ( id INT NOT NULL auto_incre ...
- 根据地图上的两个点各自的x,y坐标,计算出2点之间的直线距离。显示为公里、米
/** * calc_map_distance() , 根据地图上的两个点各自的x,y坐标,计算出2点之间的直线距离 * @param array $point_1 第1个点的x,y坐标 array( ...
- Excel中利用IF和TIME函数计算出上下班状态!
大家都知道现在上下班实行打卡制,制作考勤的人员需要对你上下班的时间,计算出上下班的状态,比如:迟到.早退.加班.正常等.下面为您介绍一个“帮手”. 1.打开Excel文档.如下图 ...
- PHP 计算出内存最高占用.
PHP 计算出内存最高占用. 代码可以计算出内存是否完全被使用, ini设置处:memory_limit = 1024M 代码跑完将显示如下信息: memory_limit:320M all ...
随机推荐
- luogu3368树状数组模板2
题目链接:https://www.luogu.org/problemnew/show/P3368 题意:与模板1不同的是这题的操作是树状数组并不在行的区间更新和单点查找,如果按照模板1那样写肯定会T. ...
- PHP-----CMS
刚刚看到了一篇关于phpcms的文章自己今后比较有帮助,就把它摘了下来. 1.首先下载phpcms v9的集成安装包并安装,这里就不详细说明了. 2.本地调试建议大家使用APMserver,或者wam ...
- programming-languages学习笔记--第2部分
programming-languages学习笔记–第2部分 */--> pre.src {background-color: #292b2e; color: #b2b2b2;} pre.src ...
- Redis 基本操作(一)
redis和普通的Key-Value结构不同,Redis的Key支持灵活的数据结构,除了strings,还有hashes.lists. sets 和sorted sets等结构.正是这些灵活的数据结构 ...
- Ubuntu下配置安装telnet server
1.安装xinetd 以及telnetd # apt-get install xinetd telnetd 2.配置文件/etc/inetd.conf #vi /etc/inetd.conf # St ...
- Kubernetes组件与架构
转载请标明出处: 文章首发于>https://www.fangzhipeng.com/kubernetes/2018/09/30/k8s-basic1/ 本文出自方志朋的博客 Kubernete ...
- Oracle 左连接(+)加号用法及常用语法之间的关系
本文目的: 通过分析左连接(+)加号的写法和一些常用语法之间的联系,了解到Oracle 加号(+)的用法 分析步骤: 1.首先创建测试表的结构: create table test_left_a (a ...
- oracle计算某个表中数据所占表空间的比例
要求计算某个表所占表空间的大小,网上查了些资料用到了oracle的3个视图.具体sql如下 select segment_name as tablename, round(bytes / (selec ...
- 自己封装了的AlertController
一直觉得使用系统这个东西写起来特别麻烦,每次都要写一大推东西,还是重复的,今天抽了点时间自己重新封装了一下,解决了自己的强迫症...,不多说,直接上代码了. 1.自己定义了一个名为XBZ的UIAler ...
- python 输入三个整数,按照从小到大的顺序打印
# # 3 输入三个整数,按照从小到大的顺序打印 a = int(input('请输入第一个整数:')) b = int(input('请输入第二个整数:')) c = int(input('请输入第 ...