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

河南做网站汉狮百度seo刷排名工具

河南做网站汉狮,百度seo刷排名工具,网站下载到本地,专业APP客户端做网站LC 585 2016年的投资 思路: 本题思路好想 , 就是把2015年投资相同的找出来 ,再找出这其中经纬度不同的id对应的2016年的保险。 实际操作中, 发现用group by很麻烦, 那么想到窗口函数也能 分组进行统计 利用 count(…

LC 585 2016年的投资

思路:

本题思路好想 , 就是把2015年投资相同的找出来 ,再找出这其中经纬度不同的id对应的2016年的保险。

实际操作中, 发现用group by很麻烦, 那么想到窗口函数也能 分组进行统计

利用 count() over (partition by)可以分组统计的同时 ,不合并原始行 , 可以很方便的查找出符合条件的行。

with temp as(
select Insurance.pid ,
tiv_2016,
count(*) over(partition by tiv_2015) cnt ,
count(*) over(partition by lat , lon) cnt2
from Insurance)select round(sum(tiv_2016) , 2) as tiv_2016 from temp
where cnt > 1 and cnt2 = 1

知识点:

1.partition by 相关语法 

count(*)  over(partition by column1[column2]) 

和group by 一样 ,partition by 后面可以加多个字段 ,这些字段全都相同的才视为同一组。

2.group by相关语法

一开始用group by , 写出这样的语句

select pid from Insurance
group by tiv_2015 having count(tiv_2015) > 1

以为可以从这张表中找出 pid为1,3,4

但事实上,

  • ​GROUP BY tiv_2015​​:将数据按 tiv_2015 分组,得到以下分组:
    • tiv_2015 = 10:包含 pid = 1, 3, 4
    • tiv_2015 = 20:包含 pid = 2
  • ​HAVING COUNT(...) > 1​​:保留重复的 tiv_2015 分组(即 tiv_2015 = 10)。
  • ​SELECT pid​​:由于 pid 不在 GROUP BY 中且非聚合列,数据库会从 tiv_2015 = 10 的分组中 ​​随机选择一个 pid​(如 1)。

根本原因在于 select的列必须在group by的列中 , 或者跟着聚合函数才行!

LC 185 部门工资前三高的员工

知识点

和排名相关的窗口函数

1.ROW_NUMBER()

ROW_NUMBER() OVER (ORDER BY column [ASC|DESC])

它会为每一行分配连续的序号,不管值相不相同.

2.rank()

为每一行分配排名,相同值共享同一排名,后续排名跳过重复位次。

3.dense_rank()

为每一行分配排名,相同值共享同一排名,后续排名不跳位

注意,所有和排序相关的窗口函数 , 都必须 跟 order by 

这几种排序的窗口函数 , 符合题意得是第三种,代码如下:

with temp as 
(select d.name Department ,e.name Employee , salary, 
dense_rank() over(partition by d.id order by salary desc )  rk 
from Employee e inner join Department d on e.departmentId = d.id)select Department , Employee , salary as Salary  from temp
where rk <= 3

LC1527 患某种疾病的患者

知识点:like的相关语法

like用于mysql中字符串的模糊匹配 ,

1. LIKE 'abc%' 

表示 以abc开头的字符串 ,%为通配占位符

2.LIKE '%abc%'

表示包含了abc的字符串

3.LIKE '%abc' 

表示包含以abc结尾的字符串。

记忆方法在于:%在哪边 , 表示哪边可以有其他的字符串内容

4. _ 占位符

用于匹配单个字符

-- 匹配第2个字符为 "a" 的字符串(如 "ba", "cat")
WHERE column LIKE '_a%';-- 匹配长度为3且第3个字符为 "x" 的字符串(如 "abx", "1x2")
WHERE column LIKE '__x';

本体思路:

一个坑点在于, 糖尿病的字符串必须以 “DIAB1”开头 ,SADIAB100并不是糖尿病

那么, 如何判断给出的condition中包不包含“DIAB1”呢?

这里就用到like了 , 

分两种情况判断 ,

1.DIAB1位于condition的开头 , 那么用 like 'DIAB1%'即可

2.DIAB1位于condition的中间, 而题目明确指出 , condition字符串中, 不同病症用空格分隔,

那么 要判断DIAB1是否包含在字符串中 , 就是判断  ' DIAB1'(DIAB1加了个空格)是否完整出现

使用like '% DIAB1'

select patient_id , patient_name ,  conditions
from Patients
where conditions like 'DIAB1%' or conditions like '% DIAB1%'

http://www.dtcms.com/wzjs/131140.html

相关文章:

  • wordpress某个用户重定向关键词优化怎么写
  • 如何做网站模版腾讯朋友圈广告代理
  • 佛山专业做网站的公司线上培训
  • 专业的赣州网站建设免费b2b网站推广
  • 视频网站 做综艺 电视台百度站长收录提交入口
  • 网站首页不在第一位网站建设深圳公司
  • 手机搭建wordpress 不root网络优化器免费
  • 域名做网站自己的电脑今日重大新闻
  • 做地方门户网站的排名安卓优化大师官方版
  • 大连网站建设短期培训班seo快速排名软件方案
  • 本科毕业设计代做网站seo优化软件哪个好
  • 遵义网站开发广西seo快速排名
  • 做网站时为什么导航时两行字竞价托管公司排名
  • 杭州seo整站优化优化工具箱下载
  • wordpress 游戏 模板广东seo点击排名软件哪里好
  • 广西壮族自治区民族医院二级域名和一级域名优化难度
  • 做团购的网站培训机构连锁加盟
  • 宿迁市房地产信息网seo推广外包报价表
  • 没网站做cpa淘宝关键词工具
  • 微信小程序视频网站开发教程阳江seo
  • 阿里巴巴有没有帮做网站的公司百度推广的四种收费形式
  • 西安医院网站建设百度官网电话
  • c asp.net网站开发书怎么做好网站营销推广
  • 找网站建设公司进入百度app查看
  • 品牌推广部广州搜索排名优化
  • 柳州做网站优化app优化排名
  • 怎么做刷网站流量生意平台优化是什么意思
  • 深圳优秀网站建设公司谷歌广告推广怎么做
  • 石家庄网站建设招商汕头百度seo公司
  • 商丘网站制作费用福州网站seo