MySQL 9.0 发行说明
以下示例演示了如何使用位组函数来计算用户每月访问网页的天数。
CREATE TABLE t1 (year YEAR, month INT UNSIGNED,
day INT UNSIGNED);
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 | 1 | 3 |
| 2000 | 2 | 2 |
+------+-------+------+
该查询计算表中每年/每月组合出现的不同天数,并自动删除重复条目。