当前位置: 首页 > wzjs >正文

wordpress文章中添加视频说说seo论坛

wordpress文章中添加视频,说说seo论坛,做网站基本东西,阿里云做网站选什么主机文章目录 SQL语句---特殊查询1、行列转换1.1 行转列1.1.1 统计每个人的各科分数及总分1.1.2 统计各门课程的数据 1.2 列转行1.2.1 查询每个人的工资流水 2、按月统计 SQL语句—特殊查询 1、行列转换 1.1 行转列 有如下score表 1.1.1 统计每个人的各科分数及总分 编写SQL语句…

文章目录

  • SQL语句---特殊查询
    • 1、行列转换
      • 1.1 行转列
        • 1.1.1 统计每个人的各科分数及总分
        • 1.1.2 统计各门课程的数据
      • 1.2 列转行
        • 1.2.1 查询每个人的工资流水
    • 2、按月统计

SQL语句—特殊查询

1、行列转换

1.1 行转列

有如下score表

在这里插入图片描述

1.1.1 统计每个人的各科分数及总分

编写SQL语句,得到如下结果:

在这里插入图片描述
使用CASE

select student,max(CASE WHEN subject = 'Java' THEN score END) as Java,max(CASE WHEN subject = 'MySQL' THEN score END) as MySQL,max(CASE WHEN subject = 'HTML' THEN score END) as HTML,sum(score) as Total
from score
GROUP BY student

使用子查询

select student, (select score from score s1 where s1.student = s.student and subject = 'Java') as Java,(select score from score s1 where s1.student = s.student and subject = 'MySQL') as MySQL,(select score from score s1 where s1.student = s.student and subject = 'HTML') as HTML,sum(score) as Total
from score s
group by student
1.1.2 统计各门课程的数据

查询各门课程的最高分,最低分,平均分,及格率,不及格率,如下表:

在这里插入图片描述
使用子查询

对于最高分、最低分、平均分,只需要使用聚合函数即可。

但及格率和不及格率计算很不方便,这里使用case生成两个辅助列。

select subject,max(score) as 最高分, min(score) as 最低分, avg(score) as 平均分, sum(及格)/count(id) as 及格率, sum(不及格)/count(id) as 不及格率
from (select *,case when score>=60 then 1 else 0 end as 及格,case when score<60 then 1 else 0 end as 不及格from score
) as s
group by subject

1.2 列转行

有如下表:

在这里插入图片描述

1.2.1 查询每个人的工资流水

编写SQL语句,得到如下结果:

在这里插入图片描述
使用UNION拼接

select name, 'Jan' as month, Jan
from salary 
union
select name, 'Feb' as month, Feb
from salary 
union
select name, 'Mar' as month, Mar
from salary 
order by name desc

2、按月统计

数据表

有如下order表:

在这里插入图片描述
统计每个月的总销售额

编写SQL语句,得到如下结果:

在这里插入图片描述
每月都有数据

直接根据月份进行分组,不需要额外生成月份。

select DATE_FORMAT(time,'%Y-%m') as 月份, count(id) 订单数,sum(count) 销售量,sum(count*salary) 销售额
from `order`
group by year(time), month(time)
order by time

有的月份没有数据

需要额外生成月份,再进行连接查询。

查询过去12个月,每月的销售额,如当前日期是2023/08/08,则查询2022/08~2022/09十二个月的数据。

可利用如下代码生成12个月的信息:

select LAST_DAY(SUBDATE(CURDATE(),INTERVAL 1 MONTH)) as m UNION
select LAST_DAY(SUBDATE(CURDATE(),INTERVAL 2 MONTH)) UNION
select LAST_DAY(SUBDATE(CURDATE(),INTERVAL 3 MONTH)) UNION
select LAST_DAY(SUBDATE(CURDATE(),INTERVAL 4 MONTH)) UNION
select LAST_DAY(SUBDATE(CURDATE(),INTERVAL 5 MONTH)) UNION
select LAST_DAY(SUBDATE(CURDATE(),INTERVAL 6 MONTH)) UNION
select LAST_DAY(SUBDATE(CURDATE(),INTERVAL 7 MONTH)) UNION
select LAST_DAY(SUBDATE(CURDATE(),INTERVAL 8 MONTH)) UNION
select LAST_DAY(SUBDATE(CURDATE(),INTERVAL 9 MONTH)) UNION
select LAST_DAY(SUBDATE(CURDATE(),INTERVAL 10 MONTH)) UNION
select LAST_DAY(SUBDATE(CURDATE(),INTERVAL 11 MONTH)) UNION
select LAST_DAY(SUBDATE(CURDATE(),INTERVAL 12 MONTH))

将得到如下结果:

在这里插入图片描述
再与order表进行连接查询。

select DATE_FORMAT(m,'%Y-%m') as 月份, COUNT(id) 订单数,IFNULL(SUM(count), 0) 销售量,IFNULL(SUM(count*salary), 0) 销售额
from (select LAST_DAY(SUBDATE(CURDATE(),INTERVAL 1 MONTH)) as m UNIONselect LAST_DAY(SUBDATE(CURDATE(),INTERVAL 2 MONTH)) UNIONselect LAST_DAY(SUBDATE(CURDATE(),INTERVAL 3 MONTH)) UNIONselect LAST_DAY(SUBDATE(CURDATE(),INTERVAL 4 MONTH)) UNIONselect LAST_DAY(SUBDATE(CURDATE(),INTERVAL 5 MONTH)) UNIONselect LAST_DAY(SUBDATE(CURDATE(),INTERVAL 6 MONTH)) UNIONselect LAST_DAY(SUBDATE(CURDATE(),INTERVAL 7 MONTH)) UNIONselect LAST_DAY(SUBDATE(CURDATE(),INTERVAL 8 MONTH)) UNIONselect LAST_DAY(SUBDATE(CURDATE(),INTERVAL 9 MONTH)) UNIONselect LAST_DAY(SUBDATE(CURDATE(),INTERVAL 10 MONTH)) UNIONselect LAST_DAY(SUBDATE(CURDATE(),INTERVAL 11 MONTH)) UNIONselect LAST_DAY(SUBDATE(CURDATE(),INTERVAL 12 MONTH))
) as month
left join `order` on year(time) = year(m) and month(time) = month(m)
group by m
http://www.dtcms.com/wzjs/57928.html

相关文章:

  • 网站建设实训的方法今日头条十大新闻最新
  • 中英文网站用同域名企业网站制作步骤
  • 单页网站的域名厦门seo排名公司
  • 做网站买一个域名多少钱关键词数据分析工具有哪些
  • 太原疫情防控最新通知大众点评seo关键词优化
  • 网站目录结构 权限在哪里可以免费自学seo课程
  • 公司做网站推广的价格市场推广专员
  • 聊城做网站推广地方营销推广软件有哪些
  • 做网站单独接单百度广告联盟网站
  • 武汉做网站的视频剪辑培训班一般学费多少
  • wordpress图片多选seo sem关键词优化
  • 厦门商城网站建设班级优化大师官方网站
  • 适合推广的网站公司网站设计的内容有哪些
  • 官方网站建设源码系统广州线上教学
  • 电商公司的网上设计上海搜索排名优化公司
  • seo是做网站源码还是什么360竞价推广开户多少钱
  • 网络科技公司网站制作seo关键词排名价格
  • 香港主机网站充值软文发布推广平台
  • 网站建设 嘉定微信朋友圈软文大全
  • 注册公司网站需要什么资料免费收录网站提交
  • fr后缀网站合肥网络seo推广服务
  • 新乡网站建设制作网站目录扫描
  • 一般做海报的图片跟哪个网站下载电子商务网站建设规划方案
  • 自己做网站需要什么材料厦门seo推广公司
  • 用家里网络做网站邮件营销
  • 延安网站开发seo搜索引擎优化人员
  • 灵犀科技网站建设百度网址大全网站大全
  • 自己电脑wordpress麒麟seo外推软件
  • 商城网站建设系统seo外链发布平台
  • 网站建设图片怎么做搜索引擎排名竞价