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

网站开发包括哪些工作第三方平台推广引流

网站开发包括哪些工作,第三方平台推广引流,网站建设运行工作情况总结,公司部门架构力扣题 1、题目地址 2388. 将表中的空值更改为前一个值 2、模拟表 表:CoffeeShop Column NameTypeidintdrinkvarchar id 是该表的主键(具有唯一值的列)。该表中的每一行都显示了订单 id 和所点饮料的名称。一些饮料行为 null。 3、要求…

力扣题

1、题目地址

2388. 将表中的空值更改为前一个值

2、模拟表

表:CoffeeShop

Column NameType
idint
drinkvarchar
  • id 是该表的主键(具有唯一值的列)。
  • 该表中的每一行都显示了订单 id 和所点饮料的名称。一些饮料行为 null。

3、要求

编写一个解决方案将 drink 的 null 值替换为前面最近一行不为 null 的 drink。保证表第一行的 drink 不为 null。

返回 与输入顺序相同的 结果表。

查询结果格式示例如下。

示例 1:

输入:

CoffeeShop 表:

iddrink
9Rum and Coke
6null
7null
3St Germain Spritz
1Orange Margarita
2null

输出:

iddrink
9Rum and Coke
6Rum and Coke
7Rum and Coke
3St Germain Spritz
1Orange Margarita
2Orange Margarita

解释:

对于 ID 6,之前不为空的值来自 ID 9。我们将 null 替换为 “Rum and Coke”。
对于 ID 7,之前不为空的值来自 ID 9。我们将 null 替换为 “Rum and Coke”。
对于 ID 2,之前不为空的值来自 ID 1。我们将 null 替换为 “Orange Margarita”。
请注意,输出中的行与输入中的行相同。

4、代码编写

我的写法

思路:首先要求里面的输出顺序还是和原先一样,原先并没有按什么排序,所以我们得先对数据标上序号,这就可以用到窗口函数 row_numer,然后我们只需要在查询到 null 数据的时候,去查询比这个 null 数据的序号小的不为 null 的数据,然后根据序号倒序,取第一条即可,就能满足要求

里面需要注意的一点就是窗口函数 ROW_NUMBER() over()over 括号里面是不加分组和排序的

WITH tmp AS (SELECT *, ROW_NUMBER() over() AS rnFROM CoffeeShop
)
SELECT id, IFNULL(drink, (SELECT drink FROM tmp WHERE rn < one.rn AND drink IS NOT NULL ORDER BY rn DESC LIMIT 1)) AS drink
FROM tmp AS one

知识点

临时变量有两种用法:(temp 可以改成其他名)
1、使用 set,定义形式 set @temp=[var]

SET @temp=10;
SELECT @temp;

2、使用 select,定义形式 select @temp:=[var],下面两种都可以输出

SELECT @temp:=10;
SELECT @temp:=10;
SELECT @temp;

参考:mysql 临时变量

网友写法(临时变量用法)

SELECT id,@temp := IFNULL(drink, @temp) drink
FROM CoffeeShop

上面网友写法就是用的第二种用法,代码分析如下:

第 1 行:IFNULL 不为 null,将 Rum and Coke 赋值到 @temp 里面,并输出 SELECT @temp:= drink(drink='Rum and Coke')
第 2 行:IFNULLnull,将 @temp 赋值到 @temp 里面,并输出 SELECT @temp:=@temp(@temp='Rum and Coke'
第 3 行:IFNULLnull,将 @temp 赋值到 @temp 里面,并输出 SELECT @temp:=@temp(@temp='Rum and Coke'
第 4 行:IFNULL 不为 null,将 St Germain Spritz 赋值到 @temp 里面,并输出 SELECT @temp:= drink(drink='St Germain Spritz')
第 5 行:IFNULL 不为 null,将 Orange Margarita 赋值到 @temp 里面,并输出 SELECT @temp:= drink(drink='Orange Margarita')
第 6 行:IFNULLnull,将 @temp 赋值到 @temp 里面,并输出 SELECT @temp:=@temp(@temp='Orange Margarita'

iddrink
9Rum and Coke -> @temp
6null <- @temp
7null <- @temp
3St Germain Spritz -> @temp
1Orange Margarita -> @temp
2null <- @temp
http://www.yidumall.com/news/23307.html

相关文章:

  • 做3d图的网站有哪些网站优化什么意思
  • wordpress能做社交seo专员是什么
  • 怎么看网站的访问量东莞做网站公司
  • 那个公司建站好武汉网站建设公司
  • 网站建设导航图图库seo上海公司
  • 企业网站页头背景图找人帮忙注册app推广
  • 中国做b2b外贸的网站有哪些友情链接的定义
  • 告状书放网站上怎么做手机营销推广方案
  • 克拉玛依建设局网站竞价软件哪个好
  • 旅游网站策划案如何策划一个营销方案
  • 做电影网站选服务器网络推广渠道有哪些
  • 如何模仿网站模板百度首页的ip地址
  • 物流企业网站源码网站推广手段
  • wordpress变的很卡seo网站管理招聘
  • 有什么可以做建筑模型的网站深圳百度快速排名提升
  • 伊春网站优化免费视频网站推广软件
  • 十大网站app排行榜郑州网络推广方法
  • 搭建网站需要程序百度获客平台怎么收费的
  • 苏州建设局官方网站长春网站建设设计
  • 基于python的网站开发项目百度最怕哪个部门去投诉
  • 为什么明明有网却打不开网页网站seo关键词排名查询
  • 安徽网站设计平台东莞网站建设
  • 企业做的网站计入什么科目哪个平台推广效果最好
  • wordpress出选择题seo推广的公司
  • 利用php做直播网站营销方案100例
  • 中卫市网站开发制作网站服务器速度对seo有什么影响
  • 网站开发栏目需求1百度网页版
  • 西安做网站公司报价新闻摘抄2022最新20篇
  • 做生物卷子的网站培训机构加盟店排行榜
  • 网站建设A系列套餐报价模板网站建设开发