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

新站整站优化自己在家开网店怎么开

新站整站优化,自己在家开网店怎么开,常州市建设工程质量监督站网站,wordpress附件链接#x1f389;欢迎您来到我的MySQL基础复习专栏 ☆* o(≧▽≦)o *☆哈喽~我是小小恶斯法克#x1f379; ✨博客主页#xff1a;小小恶斯法克的博客 #x1f388;该系列文章专栏#xff1a;力扣刷题讲解-MySQL #x1f379;文章作者技术和水平很有限#xff0c;如果文中出… 欢迎您来到我的MySQL基础复习专栏 ☆* o(≧▽≦)o *☆哈喽~我是小小恶斯法克 ✨博客主页小小恶斯法克的博客 该系列文章专栏力扣刷题讲解-MySQL 文章作者技术和水平很有限如果文中出现错误希望大家能指正 感谢大家的关注 ❤️ ​​ 目录 查找重复的电子邮箱 查找没有买东西的顾客 总结  查找重复的电子邮箱 表: Person ---------------------- | Column Name | Type | ---------------------- | id | int | | email | varchar | ---------------------- id 是该表的主键具有唯一值的列。 此表的每一行都包含一封电子邮件。电子邮件不包含大写字母。 编写解决方案来报告所有重复的电子邮件。 请注意可以保证电子邮件字段不为 NULL。 以 任意顺序 返回结果表。 结果格式如下例。 示例 1: 输入: Person 表: ------------- | id | email | ------------- | 1 | ab.com | | 2 | cd.com | | 3 | ab.com | ------------- 输出: --------- | Email | --------- | ab.com | --------- 解释: ab.com 出现了两次。 解法一 1.自连接 2.因为实际上就这一个表一般这类题目都是首选用自连接的方法 3.那么自连接就是需要起别名 4.这里我们肯定是把它想成两个表一个p1一个p2 5.那么我们自连接后面的on的条件是什么 6.因为要找重复的邮箱所以我们肯定是找两个表相同的邮箱即p1.email p2.email 7.但是只有这一个条件肯定是不够的因为你这里是把它想成了两张表但实际上这两张表本来就是一样的它们两的字段email里面的value本身也就是一样的你只有这一个条件没有任何意义 8.所以还需要一个条件就是我们是根据不同的id相同的email这才叫重复 9.连接两个不同的条件用and 10.两个表中id要不相同的去比较即p1.Id ! p2.Id 11.所以写为select p1.Email from Person p1  join Person  p2 on p1.Email p2.Email AND p1.Id!p2.Id 12.但此时还是不对的因为id为1的emailid为3的email然后id为3的emailid为1的email相当于最后输出email会输出两次一样的重复了 13.那么最后一步就是去重用关键字distinct代码如下 select distinct(p1.Email) from Person p1 join Person p2 on p1.Email p2.Email AND p1.Id!p2.Id 执行 解法二 1.使用 GROUP BY 和 HAVING 子句 2.这个解法首先按照电子邮件地址分组然后使用 HAVING 子句筛选出出现次数大于 1 的电子邮件地址从而找出重复的电子邮件。 SELECT email FROM Person GROUP BY email HAVING COUNT(email) 1;解法三 1.使用子查询 2.这个解法使用了子查询首先在子查询中找出重复的电子邮件然后在外部查询中选择出现在子查询结果中的电子邮件。 3.这个意思就相当于把解法2作为一个嵌套select只是没有去重然后外部再套一个select用于去找子查询中的email 5.用where去筛查子查询中的电子邮件 6.代码如下 SELECT email FROM Person WHERE email IN (SELECT emailFROM PersonGROUP BY emailHAVING COUNT(email) 1 );不过博主比较推荐用第一种和第二种逻辑比较清晰最后一种相当于画蛇添足 查找没有买东西的顾客 Customers 表 ---------------------- | Column Name | Type | ---------------------- | id | int | | name | varchar | ---------------------- 在 SQL 中id 是该表的主键。 该表的每一行都表示客户的 ID 和名称。 Orders 表 ------------------- | Column Name | Type | ------------------- | id | int | | customerId | int | ------------------- 在 SQL 中id 是该表的主键。 customerId 是 Customers 表中 ID 的外键( Pandas 中的连接键)。 该表的每一行都表示订单的 ID 和订购该订单的客户的 ID。找出所有从不点任何东西的顾客。 以 任意顺序 返回结果表。 结果格式如下所示。 示例 1 输入 Customers 表: ----------- | id | name | ----------- | 1 | Joe | | 2 | Henry | | 3 | Sam | | 4 | Max | ----------- Orders 表: ---------------- | id | customerId | ---------------- | 1 | 3 | | 2 | 1 | ---------------- 输出 ----------- | Customers | ----------- | Henry | | Max | ----------- 解法一 1.要找出所有从不点任何东西的顾客我们可以使用 SQL 中的 LEFT JOIN 和 IS NULL 来解决这个问题。 2.左外连接相当于查询左表的所有数据也包含了左表和右表交集部分的数据 3.所以我们肯定是select * from  Customers left join  Orders on 条件 4.我们肯定是要给表取一个别名比较方便简洁 5.SELECT * FROM Customers c LEFT JOIN Orders o ON 条件 6.那么现在最重要的其实就是我们的ON后面的连接条件到底是什么 7.即用Orders的外键去关联Customers的主键因为实际上Orders的外键代表的就是Customers的主键所有条件是O.customerId C.Id  8.即SELECT * FROM Customers c LEFT JOIN Orders o ON c.id o.customerId 9.此时只是左外连接成功了但是我们还没有完成它只是把所有数据返回了这时候我们要进行筛选 10.筛选我们用到where条件那么where后面的条件如何写呢 8..我们会把左表的所有数据返回包括没有买东西的顾客和他们的订单那么没有买东西的顾客就是null 9.我们再用where子句去过滤出Orders 表中没有对应订单的顾客即 o.id IS NULL。这样就能找出所有从不点任何东西的顾客。 10.SELECT * FROM Customers c LEFT JOIN Orders o ON c.id o.customerId WHERE o.id IS NULL; 11.再把*优化一下代码如下 SELECT c.name AS Customers FROM Customers c LEFT JOIN Orders o ON c.id o.customerId WHERE o.id IS NULL;总结  这个查询首先从 Customers 表中选择顾客的名称并左连接 Orders 表以便找出所有顾客和他们的订单。然后使用 WHERE 子句过滤出在 Orders 表中没有对应订单的顾客即 o.id IS NULL。这样就能找出所有从不点任何东西的顾客。 在这个示例中查询的结果会返回 Henry 和 Max因为他们在 Orders 表中没有对应的订单记录。 解法二 1.运用not in去找Customers表中谁的id没有在Orders表中的CustomerId中 2.意思也就是这4个人谁没有顾客订单我们就返回谁的名字 3.select * from Customers c where c.id not in  (select CustomerId from Orders)  4.优化一下*返回名字然后字段取需要的别名Customers 5.代码如下 select Name Customers from Customers c where c.Id not in (select CustomerId from Orders )
http://www.dnsts.com.cn/news/136657.html

相关文章:

  • 广州化妆品网站制作北京建设工程信息网人员库里的人怎么删除
  • 阳江北京网站建设网站运作模式
  • 定制网站建设功能报价表模板ps怎么网站首页
  • 珠宝类网站建设可执行报告网站建设发展方向有哪些
  • 什么网站做弹窗广告好西安网络公司
  • 做众筹的网站深圳网站建设fantodo
  • 线上少儿编程网站开发怎么建设网站怎么样
  • 中国建设银行贵州分行网站南阳网站推广价格
  • 网站建设与企业发展手机制作网站主页软件
  • 龙胜网站建设公司seo专员工作容易学吗
  • js 捕获网站异常插件织梦做的网站能做seo吗
  • 什么公司会招网站建设网站seo文章该怎么写
  • 专门做护肤品网站网站空间怎么收费
  • 建站是什么东西怎么看网站是什么程序
  • 在自己网站建立自己的外链建设通网站有法律
  • 网站404页面查询上海的软件外包公司
  • 网上做一道题2元的网站宝安做网站怎么样
  • 宣传品牌网站建设响应式网站一般做几个版本
  • 360提示危险的网站网页游戏开发技术有哪些
  • 用dreamever如何建设网站公司网站建设有用吗
  • 用php做高中数学题库网站湖南建筑行业
  • 国内设计网站公司合肥建设工程信息网官网
  • 网易建站模板响应式布局网站尺寸
  • 临沂网站建设哪家更好新材料 东莞网站建设
  • 企业网站建设申请域名出入长沙今天最新通知
  • 上海官方网站建设司瓦图网站
  • 一级造价工程师报名时间南京seo网络优化公司
  • 平台网站建设ppt模板软件定制开发是什么意思
  • 黄龙云 加强网站建设好看的网站首页欣赏
  • 房产网站制作模板网站建设公司佛山