用位组函数来计算每个月中用户访问网页的天数。
mysql中BIT_COUNT的统计使用
CREATE TABLE t1 ( year YEAR ( 4 ), month INT ( 2 ) UNSIGNED ZEROFILL,
day INT ( 2 ) UNSIGNED ZEROFILL);
INSERT INTO t1 VALUES ( 2000 , 1 , 1 ),( 2000 , 1 , 20 ),( 2000 , 1 , 30 ),( 2000 , 2 , 2 ),
( 2000 , 2 , 23 ),( 2000 , 2 , 23 );
示例表中含有代表用户访问网页的年-月-日值。可以使用以下查询来确定每个月的访问天数:
SELECT year , month ,BIT_COUNT(BIT_OR( 1 << day )) AS days FROM t1
GROUP BY year , month ;
将返回:
+ -- ----+-------+------+
| year | month | days |
+ -- ----+-------+------+
| 2000 | 01 | 3 |
| 2000 | 02 | 2 |
+ -- ----+-------+------+
该查询计算了在表中按年 / 月组合的不同天数,可以自动去除重复的询问。
上面例子中的查询语句:
例如:29 = 11101 则:BIT_COUNT(29)= 4;
2、BIT_OR( expr ):返回 expr 中所有比特的bitwise OR。计算执行的精确度为64比特(BIGINT) 。
例如:上面例子中,2000年02月中有一条2号的记录两条23号的记录,所以"1<<day"表示出来就是 “1<<2”和“1<<23”,得到二进制数 100 和 100000000000000000000000 。然后再OR运算。即 100 OR 10000000000000000000000 OR 10000000000000000000000 = 100000000000000000000100;这样再用BIT_COUNT处理得出的值就是2,自动去除了重复的日期。
转载于:https://blog.51cto.com/wlq1203/765772
用位组函数来计算每个月中用户访问网页的天数。相关推荐
- API函数的中文说明及所有的32位WindowsAPI函数的定义
API函数的中文说明及所有的32位WindowsAPI函数的定义 ============================API函数的中文说明============================= ...
- MySQL中的组函数(聚合函数)
MySQL中的组函数(聚合函数) 组函数操作行集,给出每组的结果.组函数不象单行函数,组函数对行的集合进行操 作,对每组给出一个结果.这些集合可能是整个表或者是表分成的组. 一.组函数与单行函数的区别 ...
- SQL语言之组函数(Oracle)
组函数(聚合函数) 组函数操作行集,给出每组的结果.组函数不像单行函数,组函数对行的集合进行操作,对每组给出一个结果.这些集合可能是整个表或者是表分成的组: > 一.组函数与单行函数的区别 单 ...
- php日期相减函数,倒计时函数_计算两个时间相差值_PHP函数
**PHP倒计时函数.求两个日期时间之间相差的时间函数.计算时差函数_PHP函数笔记** ```php /** * 求两个日期时间之间相差的时间 * (针对1970年1月1日之后,求之前可以采用泰勒公 ...
- 根据父类id查询所有的父级_031、组函数和子查询
1.组函数(聚合函数) (1)组函数介绍 组函数操作行集,给出每组的结果.组函数不象单行函数,组函数对行的集合进行操作, 对每组给出一个结果.这些集合可能是整个表或者是表分成的组. 组函数与单行函数区 ...
- [转]EXCEL截取字符串中某几位的函数——LeftMIDRight及Find函数的使用
原文地址:http://blog.sina.com.cn/s/blog_3f136a180102ymq5.html EXCEL截取字符串中某几位的函数 --Left MID Right及Find函数的 ...
- 【MySQL快速入门】高级查询:计算函数分组计算
使用聚合函数汇总数据: SQL提供统计函数: count([shift+8]):统计表中元组个数 count([distinct]<列名>):统计本列列值个数 sum(<列名> ...
- Excel函数——小数点计算
Excel函数--小数点计算 动作目标:比较"误差值"和"中测计算的误差"是否相等?如果不相等把这两个值自动标红! 动作一: 动作二: 结果:H列=D列和F列的 ...
- C语言-函数案例-计算圆周长
C语言-函数案例-计算圆周长 任务要求 设圆半径r=1.5,圆柱高h=3,求圆周长.圆面积.圆球表面积.圆球体积.圆柱体积. 用scanf()输入数据, 输出计算结果.输出时要有说明,结果取小数点后两 ...
最新文章
- 换掉VMware?轻量级虚拟机,横空出世!
- spring之AOP的简单实例
- STL常用对象,不会搞得C++跟没学一样
- DFF之--(一)神经网络入门之线性回归
- 查看mysql是否启用安全审计_如何查看oracle是否开启了审计功能?
- LeetCode 28. Implement strStr()
- Writing udev rules
- C++笔记----运算符重载
- 随机排列算法(Fisher-Yates)
- Arcgis培训内容
- h5网页版字母消除游戏制作,html+jquery
- 4.12作业--CSS
- 科技园区及科研实验室智能消防安全管控系统
- iPhone手机总是弹出输入ID密码怎么办?
- 计算机组装需要注意什么东西,组装一台计算机需要注意那些问题?
- 12月29日每日一题
- HTML表格,列表,超链接,图片
- Webots中常用的函数(C版)
- IDEA登录账户报错:Certificate used to sign the license is not signed by JetBrains root certificate
- 前端小项目 QuizApp 答题卡片