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

专用车网站建设价格企业营销策略分析论文

专用车网站建设价格,企业营销策略分析论文,网页版游戏网站,如何搭建系统平台大家好,我是空空star,本篇带大家了解一道简单的力扣sql练习题。 文章目录前言一、题目:196. 删除重复的电子邮箱二、解题1.正确示范①提交SQL运行结果2.正确示范②提交SQL运行结果3.正确示范③提交SQL运行结果4.正确示范④提交SQL运行结果5.其…

大家好,我是空空star,本篇带大家了解一道简单的力扣sql练习题。

文章目录

  • 前言
  • 一、题目:196. 删除重复的电子邮箱
  • 二、解题
    • 1.正确示范①
      • 提交SQL
      • 运行结果
    • 2.正确示范②
      • 提交SQL
      • 运行结果
    • 3.正确示范③
      • 提交SQL
      • 运行结果
    • 4.正确示范④
      • 提交SQL
      • 运行结果
    • 5.其他
  • 总结


前言


一、题目:196. 删除重复的电子邮箱

表: Person

+-------------+---------+
| Column Name | Type    |
+-------------+---------+
| id          | int     |
| email       | varchar |
+-------------+---------+
id是该表的主键列。
该表的每一行包含一封电子邮件。电子邮件将不包含大写字母。

编写一个 SQL 删除语句来 删除 所有重复的电子邮件,只保留一个id最小的唯一电子邮件。

以 任意顺序 返回结果表。 (注意: 仅需要写删除语句,将自动对剩余结果进行查询)

查询结果格式如下所示。
示例 1:

输入: 
Person 表:
+----+------------------+
| id | email            |
+----+------------------+
| 1  | john@example.com |
| 2  | bob@example.com  |
| 3  | john@example.com |
+----+------------------+
输出: 
+----+------------------+
| id | email            |
+----+------------------+
| 1  | john@example.com |
| 2  | bob@example.com  |
+----+------------------+
解释: john@example.com重复两次。我们保留最小的Id = 1

二、解题

1.正确示范①

提交SQL

delete from Person 
where id in(
select id from (
select id,email,
row_number() over(partition by email order by id) cols
from Person
) u where cols>1
)

运行结果

2.正确示范②

提交SQL

delete from Person 
where id in(
select id from (
select id,email,
rank() over(partition by email order by id) cols
from Person
) u where cols>1
)

运行结果

3.正确示范③

提交SQL

delete from Person 
where id in(
select id from (
select id,email,
dense_rank() over(partition by email order by id) cols
from Person
) u where cols>1
)

运行结果

4.正确示范④

提交SQL

delete from Person 
where id not in(select min_id from(select email,min(id) min_idfrom Persongroup by email) a
)

运行结果

5.其他


总结

正确示范①思路:
使用开窗函数row_number(),按邮箱分组id升序,取排名1以上的,然后将这部分数据删除掉;
正确示范②思路:
使用开窗函数rank(),按邮箱分组id升序,取排名1以上的,然后将这部分数据删除掉;
正确示范③思路:
使用开窗函数dense_rank(),按邮箱分组id升序,取排名1以上的,然后将这部分数据删除掉;
正确示范④思路:
使用group by按邮箱分组,再用min(id)把每个邮箱对应的最小id找出来,然后将这部分id以外的数据删除。
知识点:
row_number:顺序排序,比如序号为1、2、3
rank:并列排序,会跳过重复的序号,比如序号为1、1、3
dense_rank:并列排序,不会跳过重复的序号,比如序号为1、1、2
因为该题目中id是主键,唯一的,所以row_number、rank、dense_rank在该题目中均适用。

http://www.laogonggong.com/news/9685.html

相关文章:

  • 东莞手机微信网站360提交入口网址
  • 用来做收录的网站微信营销的功能
  • 化妆品网站静态模板网络整合营销4i原则
  • 企业融资顾问外贸seo优化
  • 做网站搭建服务器要多少钱企业内训课程
  • 临沂百度网站建设seo搜索引擎优化是什么意思
  • 河北住房建设厅网站首页上海网站建设服务
  • 设计工作室的经营范围怎样进行seo推广
  • 怎么做游戏充值代理网站焊工培训
  • 用腾讯云做淘宝客网站视频我要发布信息
  • 广州网站建设知名 乐云践新谷歌浏览器安卓版下载
  • 怎么做页面跳转windows7优化大师官方下载
  • 检察院门户网站建设自查报告百度百科入口
  • wordpress模板响应式seo优化报价公司
  • wordpress模板响应式seo优化报价公司
  • 企业文化墙创意设计图seo公司重庆
  • 简单小网站经营管理培训课程
  • 阿里云 做网站 靠谱吗网络平台怎么推广
  • 英国做电商网站网络推广推广
  • 北京王府井附近的酒店重庆seo网络优化师
  • 无锡军自考网站建设谷歌推广外包
  • 日本可以做的h游戏视频网站常用的网站推广方法
  • 最火的服务器托管免费推广seo
  • wordpress js插件开发windows优化大师好不好
  • 企业怎么做网络推广武汉seo收费
  • 互站源码交易平台江西百度推广公司
  • 江门网站建设公司百度知道官网首页登录入口
  • 测试本机与网站连接应该怎么做seo与sem的区别
  • 教外国人做中国菜网站优化外包哪里好
  • 做网站的流程方法公司网页