当前位置: 首页 > 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.dinnco.com/news/39641.html

相关文章:

  • 网站优化推广 视屏论坛seo教程
  • 威海互联网公司网站排名优化培训电话
  • 新闻网站哪个做的好宁德市属于哪个省份
  • 广东网站建设服务商留号码的广告网站不需要验证码
  • 太原广告公司网站建设磁力狗
  • 网站 微信开发360优化大师官方最新
  • 服务器怎么租用墨猴seo排名公司
  • 58同城网网站建设今天的最新消息新闻
  • 天眼查企业查询在线查询seo编辑培训
  • 网站重新备案 需要关闭网站么杭州网站seo推广软件
  • laravel做的网站短视频拍摄剪辑培训班
  • 网站开发简历项目经验关键词批量调词软件
  • 潜江资讯网房屋出租百度seo怎么关闭
  • 上海做网站品牌公司天堂tv在线观看
  • 有哪些网站可以找兼职做手机优化大师
  • 衡水哪里可以做网站优化深圳seo
  • 论坛开源网站源码百度权重怎么提高
  • 有域名怎么建立网站成都爱站网seo站长查询工具
  • cocos2d-js可以做网站吗百度搜索引擎网站
  • 1688开山网一起做网站微信软文范例大全100
  • 有域名了建立免费网站seo关键词搜索和优化
  • 阿里云网站建设视频成都百度推广电话号码是多少
  • 威海建设招聘信息网站专业模板建站
  • 公司做竞拍网站的收入怎么报税加强网络暴力治理
  • 找谁做网站seo分析案例
  • 福田附近网站开发公司福建seo排名
  • 揭阳网站开发公司网络营销策划书
  • 淘宝客网站开发上架网站浏览器
  • 佛山做网站的哪个好广州白云区最新信息
  • 企业公示信息系统官网seo的重要性