MySQL分析各个星座用户数统计mysql个星座用户数

WHEN ((MONTH(birthday)=10) AND (DAY(birthday)>23)) OR ((MONTH(birthday)=11) AND (DAY(birthday)WHEN ((MONTH(birthday)=11) AND (DAY(birthday)>21)) OR ((MONTH(birthday)=12) AND (DAY(birthday)END AS constellation FROM users;通过以上SQL语句,我们就可以将各个用户的星座找出来...
MySQL分析各个星座用户数统计mysql个星座用户数
MySQL分析:各个星座用户数统计
随着互联网的发展,数据分析已成为各个行业中不可或缺的一环。在互联网应用中,对不同性格、不同偏好的用户进行分析是十分重要的。本文将以MySQL为例,介绍如何对各个星座用户数进行统计分析。
我们需要准备好相关的数据。可以通过以下SQL语句创建一个名为“users”的表:
CREATE TABLE `users` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(20) NOT NULL,
`birthday` date NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
接下来,我们需要向“users”表中添加一些测试数据。例如:
INSERT INTO `users`(`name`, `birthday`) VALUES (‘张三’, ‘1997-03-27’);
INSERT INTO `users`(`name`, `birthday`) VALUES (‘李四’, ‘1998-04-25’);
INSERT INTO `users`(`name`, `birthday`) VALUES (‘王五’, ‘1996-02-15’);
INSERT INTO `users`(`name`, `birthday`) VALUES (‘赵六’, ‘2000-05-13’);
接着,我们需要通过MySQL的DATE_FORMAT()函数将用户的生日转化为对应的星座。假设我们采用的是中国传统星座分类标准,可以使用以下SQL语句进行转化:
SELECT
name,
CASE
WHEN ((MONTH(birthday)=1) AND (DAY(birthday)=22)) THEN ‘摩羯座’
WHEN ((MONTH(birthday)=1) AND (DAY(birthday)>20)) OR ((MONTH(birthday)=2) AND (DAY(birthday)
WHEN ((MONTH(birthday)=2) AND (DAY(birthday)>18)) OR ((MONTH(birthday)=3) AND (DAY(birthday)
WHEN ((MONTH(birthday)=3) AND (DAY(birthday)>20)) OR ((MONTH(birthday)=4) AND (DAY(birthday)
WHEN ((MONTH(birthday)=4) AND (DAY(birthday)>19)) OR ((MONTH(birthday)=5) AND (DAY(birthday)
WHEN ((MONTH(birthday)=5) AND (DAY(birthday)>20)) OR ((MONTH(birthday)=6) AND (DAY(birthday)
WHEN ((MONTH(birthday)=6) AND (DAY(birthday)>21)) OR ((MONTH(birthday)=7) AND (DAY(birthday)
WHEN ((MONTH(birthday)=7) AND (DAY(birthday)>22)) OR ((MONTH(birthday)=8) AND (DAY(birthday)
WHEN ((MONTH(birthday)=8) AND (DAY(birthday)>22)) OR ((MONTH(birthday)=9) AND (DAY(birthday)
WHEN ((MONTH(birthday)=9) AND (DAY(birthday)>22)) OR ((MONTH(birthday)=10) AND (DAY(birthday)
WHEN ((MONTH(birthday)=10) AND (DAY(birthday)>23)) OR ((MONTH(birthday)=11) AND (DAY(birthday)
WHEN ((MONTH(birthday)=11) AND (DAY(birthday)>21)) OR ((MONTH(birthday)=12) AND (DAY(birthday)
END AS constellation
FROM
users;
通过以上SQL语句,我们就可以将各个用户的星座找出来。接下来,我们可以使用GROUP BY和COUNT函数将不同星座的用户数统计出来:
SELECT
constellation,
COUNT(*) AS user_count
FROM
(SELECT
CASE
WHEN ((MONTH(birthday)=1) AND (DAY(birthday)=22)) THEN ‘摩羯座’
WHEN ((MONTH(birthday)=1) AND (DAY(birthday)>20)) OR ((MONTH(birthday)=2) AND (DAY(birthday)
WHEN ((MONTH(birthday)=2) AND (DAY(birthday)>18)) OR ((MONTH(birthday)=3) AND (DAY(birthday)
WHEN ((MONTH(birthday)=3) AND (DAY(birthday)>20)) OR ((MONTH(birthday)=4) AND (DAY(birthday)
WHEN ((MONTH(birthday)=4) AND (DAY(birthday)>19)) OR ((MONTH(birthday)=5) AND (DAY(birthday)
WHEN ((MONTH(birthday)=5) AND (DAY(birthday)>20)) OR ((MONTH(birthday)=6) AND (DAY(birthday)
WHEN ((MONTH(birthday)=6) AND (DAY(birthday)>21)) OR ((MONTH(birthday)=7) AND (DAY(birthday)
WHEN ((MONTH(birthday)=7) AND (DAY(birthday)>22)) OR ((MONTH(birthday)=8) AND (DAY(birthday)
WHEN ((MONTH(birthday)=8) AND (DAY(birthday)>22)) OR ((MONTH(birthday)=9) AND (DAY(birthday)
WHEN ((MONTH(birthday)=9) AND (DAY(birthday)>22)) OR ((MONTH(birthday)=10) AND (DAY(birthday)
WHEN ((MONTH(birthday)=10) AND (DAY(birthday)>23)) OR ((MONTH(birthday)=11) AND (DAY(birthday)
WHEN ((MONTH(birthday)=11) AND (DAY(birthday)>21)) OR ((MONTH(birthday)=12) AND (DAY(birthday)
END AS constellation
FROM
users
) a
GROUP BY
constellation;
以上SQL语句将会输出每个星座的用户数。
通过这种方法,我们可以轻松地对各个星座的用户数进行分析,让我们更好地理解用户的心理偏好,并为用户提供更符合他们需求的服务。2024-08-13
mengvlog 阅读 442 次 更新于 2025-09-09 09:04:28 我来答关注问题0
  • INSERT INTO `users`(`name`, `birthday`) VALUES (‘赵六’, ‘2000-05-13’);接着,我们需要通过MySQL的DATE_FORMAT()函数将用户的生日转化为对应的星座。假设我们采用的是中国传统星座分类标准,可以使用以下SQL语句进行转化:SELECT name,CASE WHEN ((MONTH(birthday)=...

  •  翡希信息咨询 手把手教你做用户画像:三种标签类型、八大系统模块

    用户人群功能 功能:允许业务人员自定义组合多个标签来定义目标人群,查看人群覆盖量和特征。作用:满足业务人员对特定人群的分析和运营需求。综上所述,用户画像的构建涉及多种标签类型和多个系统模块,通过合理的规划和实施,可以为企业带来实际的业务价值。

  •  文暄生活科普 hive窗口分析函数使用详解系列二之分组排序窗口函数

    row_number此函数按排序顺序输出窗口中的数据行号,即使值相同,行号也会连续递增。例如,按星座分组统计PV排名。结果展示:每个星座内PV排名的用户ID,如射手座用户ID9排名第一,ID5排名第二。rank根据指定列进行排名,值相同排名并列,下一个排名会跳过,非连续。如按客户端分组统计年龄排名,32岁的两个...

  •  文暄生活科普 hive窗口分析函数使用详解系列二之分组排序窗口函数

    1.3 基础数据准备数据预览。2.各分组排序类函数的使用2.1 row_number按照排序的顺序输出窗口中的数据行号信息,不会出现排名相同的情况,且排名是连续的。即使是值相同,排名也会递增。示例:按照星座分组,统计出pv由高到低的排名。数据结果:清晰显示按星座分组,每个星座内部的PV排名的id。2.2 rank...

  •  涌书雁0JG 抖音/小红书/视频号数据分析软件有哪些?

    我用的最多的软件有:1、西瓜数据2、微商相册3、Toobigdate4、快剪辑等 短视频运营实时更新链接:https://pan.baidu.com/s/1QTf0ACiCD39vHlybC4vOhA ?pwd=2D72提取码:2D72 资源包含:快手赚钱全攻略 、火神社7成佣金暴利带车 抖推猫开创星座号小程序新玩法 【云递联盟】雷神9月9日安...

檬味博客在线解答立即免费咨询

mySQL相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部