最近写sql语句的一个总结

python + QXDM5高通平台通过自动化截取log方法及代码 阅读详情
1.在碰到求取连续的问题的时候,有2种思路,
  (1)可以将表的数据错位,就可以将前一条数据和后一条数据放在同一行,进行对比
  (2)可以使用row_number(),比如在nba题目中,求取连续夺冠球队的开始年份和结束年份
 --本题求取连续获得夺冠的nba球队,以及开始时间,和结束时间
nba的题目中用到的函数max(),min(),over()
over()分析函数主要是用于计算基于组的某种聚合,和聚合函数的不同之处在于,聚合函数对于每组只返回一行, 
over()每组返回多行
语法over(partition by deptno order by salary)
按照部门进行分区,按照工资进行排序(order by是个默认的开窗函数)
    开窗函数:与聚合函数一样,开窗函数也是对行集组进行聚合计算,但是它不像普通聚合函数那样每组只返回一个值, 
开窗函数可以为每组返回多个值,因为开窗函数所执行聚合计算的行集组是窗口。在ISO SQL规定了这样的函数为开窗函数 
,在oracle中则被称为分析函数,而在DB2中则被称为OLAP函数。
2.在学生信息查询第一题中
--查询 每个月 考试成绩至少2门科目成绩在 80分以上的学生信息。
(1):犯了一个错误,在我使用count()函数进行求取成绩大于80的时候,使用了over()函数,结果集中就出现了 
,每个学生每次考试成绩超过80的信息,结果集重复了,而放弃over()使用group by
的时候,就没有重复的结果集,over()分析函数,每组数据返回多行,而聚合函数每组只返回一行
(2):用到左外链接,以左表为基表,以右表为辅表,进行关联,左表的独有的信息,和左右表共有的信息
    右外连接:以右表为基表,以左表为辅表,右表独有的,和左右表共有的
    内连接:两张表共有的信息
    全外链接:两张表所有的信息
3.在学生信息查询二题中
(1):主要用到in,考试在第一次和第三考试
4.在学生信息查询三题中
查询每个老师带了多少门课,那个老师代课最多。
知识点:
(1)计算每学期老师教了多少门课程,需要用到distinct关键字,去重复
(2)求出每一次考试,那个老师代课最多,需要用到row_number(),给count()函数加一个伪列,倒叙排列,就可 
以取出代课最多的老师
(3)左外链接,需要注意的是关联的条件不同的条件产生的结果集都是不同的
5.在学生信息查询四题中
第几次考试 学生姓名 代课老师 科目1。。。总成绩 平均分
(1)需求是将行转列,用到CASE WHEN 
但是以上只能把每一行的数据分别显示在每一列,不能把所有的数据集中显示在一列(根据固定分区),这个时候就 
需要用到聚合函数,根据分组将本列的数据进行求和
(2)还有一点需要注意的是:当你想少一个group by的时候,可以对一个队sname进行求取最大值,结果还是他自 
己,但是去可以少一次group by
6.查询2015年和2016年每家店铺的销售数量和销售额
知识点
(1):case when 分别求出2015和2016的销售额和销售量
7.求出15年每周销售量最多的店铺(分管理城市)自然周
问题:本题我开始写的时候没有使用row_number(),而是直接求每周每个店铺的销量,然后求取最大值,然而在求取最大值的时候有一个问题就是,分组只能根据城市id和年内周进行分组,结果出来的数据没有店铺的id和店铺的名字
如果这个时候去和店铺信息表进行关联的时候,就会产生大量的结果集,
总结:在进行分区求取最大值的时候,建议用row_number(),====>再次记录
8.--第三题
--查询每个月有多少店铺某一天销售等于0(分管理城市)
--注释:如果某家店铺一个月中多天销售为0 则也是按一家店铺计算
(1)笛卡尔操作的最大作用是把任意两个不相关的表联接起来.在本题中使用笛卡尔积是因为要获取时间维度和每日 
销售关联,这样可以把每一天的销售都显示出来,因为本题中没有销售的就没有在每日销售表中
(2)本题中的条件是每个月中多天销售为0也是按1家店铺计算,所以在最后进行还要进行一次case when把一个店 
铺多天销售为0的改为1
9.----在一个月中有多少家店铺其中某连续两天销售额都为0 的店铺
(1)本题重要的一点就是使用日期错位把连续2天的销售显示到一行
KIBANA可视化管理界面说明 更说明转自https://blog.csdn.net/IT_ZRS/article/details/125496588 1 主要结构功能 使用浏览器访问 ip:5601 默认端口,进入首页 Discover:日志管理视图 主要进行搜索查询 Visualize:统计视图 构建可视化的图表 Dashboard:仪表视图 将构建的图表组合形成图表盘 Timelion:时间轴视图 随着时间流逝的数据 APM:性能管理视图 应用程序的性能管理系统 Canvas:大屏展示 阅读详情

相关推荐

经典SQL语句详解清晰的学习思路

语句部分是Mssql语句,不可以在access中使用。   SQL分类:   DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE)   DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT)   DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)   首先,简要介绍基础语句:   1、说明:创建数据库

(SqlServer)统计一销售数据

SELECT YEAR(日期字段) 度,SUM(CASE WHEN MONTH(日期字段) =1 THEN 统计重量 ELSE 0 END) 一月, SUM(CASE WHEN MONTH(日期字段) =2 THEN 统计重量 ELSE 0 END) 二月, SUM(CASE WHEN MONTH(日期字段) =3 THEN 统计重量 ELSE 0 END) 三月, SUM(CASE WHEN MONTH(日期字段) =4 THEN 统计重量 ELSE 0 END) 四月, SUM(CASE WHEN..

SsStr的博客 2088

优化sql语句执行效率几点注意事项

优化sql语句执行效率几点需要注意的事项

2023-01-15:销售员。编一个SQL查询,报告没有任何与名为 “RED” 的公司相关的订单的所有销售人员的姓名。以 任意顺序 返回结果表。 DROP TABLE IF EXISTS `com

2023-01-15:销售员。编一个SQL查询,报告没有任何与名为 “RED” 的公司相关的订单的所有销售人员的姓名。以 任意顺序 返回结果表。

福大大架构师每日一题 1万+

Mysql 常用SQL语句-2023

下面看下mysql更新语句数量较多时的处理。

weixin_43154319的博客 1254

sql思路逻辑

1、sql语句是由一个一个sql语句所组成的,每一个sql就是一个虚拟表,在应对特殊的业务时候,做关联车讯尽量不要超过3张表查询,这样在以后的数据量超多的时候,不容易进行拆分,不利于以后的扩展。 2、分析业务逻辑,一层一层的来sql,使用虚拟表做整体的关联性。 ...

ht121907的博客 1426

SQL 查询全攻略:从基础语法到高级应用(超详细手册)

SQL(Structured Query Language,结构化查询语言)是操作关系型数据库的标准语言。无论是数据查询、插入、更新还是删除,都离不开 SQL 的身影。本文将从最基础的查询语法开始,逐步深入到复杂的多表关联分组统计,帮助你系统掌握 SQL 查询技巧,轻松应对各类数据提取需求。语句SQL 中最常用的命令,用于从数据库表中提取数据。其基本语法结构为: 1.1 选择特定列 当你只需要表中的部分字段时,可以明确指定列名: 这种方式的优势在于:如果需要获取表中所有字段,可以使用通配符:

asad6的博客 1637

oracle最近sql怎么,Oracle sql语句怎么

Oracle sql语句如何我现在有2张表,一张学生等级表GradeInfo,分别有gradeId,mc2个字段,还有张表学生表stuInfo,stuId,mc,gradeId(外键),我想查询每个等级下得对应的学生,效果是这样的GradeMcstuMcAjack,mali,marryBtony,sack,tomeckay,jimy各位大侠看下!--...

weixin_39688870的博客 313

分享最近的 两条sql语句

1. 搭建基本环境 插入测试数据 insert into jgdm (jgdm,jgmc) values('12300000000','河南省');insert into jgdm (jgdm,jgmc) values('12300000005','河南省郑州市');commit;insert into jgdm(jgdm,jgmc) values(00300000000,'重庆市...

dnil27295的博客 168

最近SQL老出错!

不知道做数据的各位朋友有没有发现最近SQL出错的频率突然增加了。如果没有注意到,那么从现在开始注意下,这一个月的出错率应该都要比平常高。之前还没意识到这个问题,最近老听隔壁工位的同事说...

张俊红的个人博客 219

最近项目中的几个比较复杂的sql

1.这个是交叉表的应用, 用于统计分析报表 [code="sql"]select entity_.*, entity_.field3 + entity_.field4 + entity_.field5 + entity_.field6 + entity_.field7 + entity_.field8 + entity_.field9 as sum_maintai...

疯狂的菠菜 941

(笔记)最近SQL语句,用于复习

SHOW DATABASES; CREATE DATABASE mysql_study; SHOW TABLES; CREATE TABLE USER (NAME VARCHAR(20),PASSWORD VARCHAR(20)); DESCRIBE pet; LOAD DATA LOCAL INFILE 'E:/mashen/mysqlTest/pet.txt' INTO TABLE pet; ...

qq_38056704的博客 219

SQL查询语句使用

SQL SERVER 详细查询语句

最近了10篇Java技术博客【SQL画图组件】

​(1)Java获取SQL语句中的表名; (2)Java SQL 解析器实践; (3)Java SQL 格式化实践; (4)Java 画图相关;

haiyangyiba的专栏 432

最近数据库老是出问题,总结SQL如下.

1、谨慎用IN 2、养成将大语句、复杂的语句进行拆分的习惯 3、经常作以下F5测试 4、尽量少使用多表join :arrow: :arrow:

ayx205的专栏 86

sql 左侧要固定最近一周的周四 怎么_产品、运营学点SQL,分析数据不求人!...

大数据时代,数据分析逐渐变成了职场必备的技能。从数据中发现知识,优化决策,可以大大提升工作效率质量,并且可以更好地说服boss。对于许多岗位来说,要做好数据分析,只会使用Excel已经不够了,你还需要会更多。比如作为产品或运营,经常会有提取数据的需求,每次都要让开发或者数据分析师跑数据。但是,对方通常很忙,而你却马上需要数据,你只能无奈地等待。其实,对于大多数公司来说,数据都是存储在数据库里的。...

weixin_39743622的博客 211

最近提交一个mysql5.7的bug,提醒自己以后注意SQL要规范

最近帮朋友提交一个mysql5.7的bug ,oracle mysql 的大神还回复我 , 以后注意书sql规范 , 潜台词是不是不要给他们增加工作量 https://bugs.mysql.com/bug.php?id=86610 转载于:https://www.cnblogs.com/kelvin19840813/p/7052983.html...

weixin_34355715的博客 181

SQL很简单,可你却不好?也许这才是SQL最好的教程

本文之前,我需要跟大家探讨以下几个话题。# 你为什么必须学SQL?其实这个问题理解起来也不是那么困难,在我们工作中,无论是业务人员,还是开发人员,或是管理者,如今,几乎每个人都必须使用某种形式的数据,因为数据毕竟是信息的呈现,要获取信息必须得依赖数据,而这些数据通常是以电子表格或是数据库的形式存放。现状1:从业务人员视角来看在企业里面,我们当前的现状就是,业务人员想要看哪些数据得依赖开发人员从数据库中提取数据,而这一过程需要漫长的等待,影响工作效率,如果我们懂简单的SQL

石榴姐yyds 3904

初学SQL的思路及学习路线

SQL是数据处理分析的基石,掌握SQL将为你在数据驱动的世界中打开许多机会。通过遵循上述学习路线,你将能够逐步建立起坚实的SQL基础,并能够处理复杂的数据库操作。记住,实践是学习SQL的最佳方式,不断练习应用所学知识,你将能够熟练掌握SQL

My_wife_QBL的博客 1109

SQL 解题思维

SQL 解题思路

Robin_Pi的博客 1639

大乐透历史开奖记录信息

大乐透历史开奖结果,包含期号,开奖日期,开奖结果,一等奖获奖注数,一等奖奖金,追加注数,追加奖金,二等奖注数,二等奖奖金,追加注数,追加金额,销售额,奖池奖金等信息,共计2600+条数据。

上一篇: nba
下一篇: Select 语句执行顺序以及如何提高Oracle 基本查询效率--原文链接http://www.cnblogs.com/likeju/p/5039128.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值