LeetCode有10道SQL的题目,最近学习SQL语言,顺便刷题强化一下,

说实话刷完SQL学习指南这本书,不是很难,上面的例子 跟语法规则我都能理解透,

实际中来做一些比较难的业务逻辑题,却一下子很难想起如何利用SQL来描述

还是要多刷题开阔自己的思路,把学到手的语法加以练习 应用到实际中去

197. Rising Temperature

Given a Weather table, write a SQL query to find all dates' Ids with higher temperature compared to its previous (yesterday's) dates.

  1. +---------+------------+------------------+
  2. | Id(INT) | Date(DATE) | Temperature(INT) |
  3. +---------+------------+------------------+
  4. | 1 | 2015-01-01 | 10 |
  5. | 2 | 2015-01-02 | 25 |
  6. | 3 | 2015-01-03 | 20 |
  7. | 4 | 2015-01-04 | 30 |
  8. +---------+------------+------------------+

For example, return the following Ids for the above Weather table:

  1. +----+
  2. | Id |
  3. +----+
  4. | 2 |
  5. | 4 |
  6. +----+
  7.  
  8. 这个题目题意是要求找到比前一天气温高的条目
  1. # Write your MySQL query statement below
  2. select Id from Weather w1 where Temperature >(select Temperature from Weather w2 where to_days(w2.Date)=(to_days(w1.Date)-1))

这里用了子查询,针对外部查询的每一条记录,在子查询中找到前一天的气温 作为子查询的结果 最后与外部查询相比较,这样就能找出结果来

当然这里思路比较简单,我想出来的都是最简单 也是最容易理解的方案。

Write a SQL query to find all duplicate emails in a table named Person.

  1. +----+---------+
  2. | Id | Email |
  3. +----+---------+
  4. | 1 | a@b.com |
  5. | 2 | c@d.com |
  6. | 3 | a@b.com |
  7. +----+---------+

For example, your query should return the following for the above table:

  1. +---------+
  2. | Email |
  3. +---------+
  4. | a@b.com |
  5. +---------+

Note: All emails are in lowercase.

找出有完全一样email的条目,

解题的思路在于group by 通过集聚函数count计算条目,当条目大于2则显示,当然这里不能使用where 因为在SQL里面where必须在group by之前,然后才能集聚

所以此处只能使用having来完成 group by集聚完成之后的任务

  1. select Email from Person group by Email having count(*)>=2

181. Employees Earning More Than Their Managers

找出比他们经理还挣得多的员工

毫无疑问子查询duang起

  1. select Name Employee from Employee a where Salary >(select Salary from Employee where Id=a.ManagerId)

175. Combine Two Tables

这题直接外连,不用讲思路了

  1. select FirstName, LastName, City, State from Person left join Address on Address.PersonId=Person.PersonId

leetcode database题目的更多相关文章

  1. LeetCode高频题目(100)汇总-Java实现

    LeetCode高频题目(100)汇总-Java实现       LeetCode高频题目(100)汇总-Java实现 目录 第01-50题 [Leetcode-easy-1] Two Sum [Le ...

  2. LeetCode算法题目解答汇总(转自四火的唠叨)

    LeetCode算法题目解答汇总 本文转自<四火的唠叨> 只要不是特别忙或者特别不方便,最近一直保持着每天做几道算法题的规律,到后来随着难度的增加,每天做的题目越来越少.我的初衷就是练习, ...

  3. LeetCode SQL题目(第一弹)

    LeetCode SQL题目 注意:Leetcode上的SQL编程题都提供了数据表的架构程序,只需要将它贴入本地数据库即可调试自己编写的程序 不管是MS-SQL Server还是MySQL都需要登陆才 ...

  4. leetcode二叉树题目总结

    leetcode二叉树题目总结 题目链接:https://leetcode-cn.com/leetbook/detail/data-structure-binary-tree/ 前序遍历(NLR) p ...

  5. 已知前序(后序)遍历序列和中序遍历序列构建二叉树(Leetcode相关题目)

    1.文字描述: 已知一颗二叉树的前序(后序)遍历序列和中序遍历序列,如何构建这棵二叉树? 以前序为例子: 前序遍历序列:ABCDEF 中序遍历序列:CBDAEF 前序遍历先访问根节点,因此前序遍历序列 ...

  6. LeetCode Animation 题目图解汇总(持续更新中...)

    我会尽力将LeetCode上所有的题目都用动画的形式演示出来,期待与你见证这一天! GitHub Repo:LeetCode Animation Follow: MisterBooo · GitHub ...

  7. leetcode - database - 177. Nth Highest Salary (Oracle)

    题目链接:https://leetcode.com/problems/nth-highest-salary/description/ 题意:查询出表中工资第N高的值 思路: 1.先按照工资从高到低排序 ...

  8. LeetCode 十月份题目汇总

    开源地址:点击该链接 前言 十月份共有60道题目,全部属于 Easy 难度的,所以公众号中分享出来的并不多,只是挑了一些感觉还可以的才分享了出来,这60道题目我按照不同类别进行了分类整理,所有源码以及 ...

  9. leetcode上题目的分类

    leetcode链表部分题目 https://zhuanlan.zhihu.com/p/29800285 <[Leetcode][链表]相关题目汇总/分析/总结> leetcode堆部分题 ...

随机推荐

  1. virtualenv and virtualenvwrapper on Ubuntu 14.04

    In this post I’ll go over my attempt to setup virtual environments for Python development. Most Pyth ...

  2. MVC Html.AntiForgeryToken() 防止CSRF攻击

    转自:http://blog.csdn.net/cpytiger/article/details/8781457 一.MVC中的Html.AntiForgeryToken()是用来防止跨站请求伪造(C ...

  3. css百宝箱

    关于css百宝箱? 在前端学习中,总会遇到零星的知识点,小技巧,这些知识点小到不至于用一片博客写出来,遇到时网上查询一下或许也能搞定,但不一定能记住,所以这篇博客就用来记录那些散落的知识点,积少成多, ...

  4. 存放事务码及其描述的TABLE是TSTC、TSTCT。

    存放事务码及其描述的TABLE是TSTC.TSTCT.

  5. 独立博客开张!有关读书、GTD和IT方面的内容将发布在新网站上

    2015年自己建个独立博客http://www.shenlongbin.com,以后与读书.GTD和IT技术有关的主题都放在个人博客中,2015年计划基本制定,请移步到这里. 感谢博客园提供了如此优秀 ...

  6. Sharepoint学习笔记—习题系列--70-573习题解析 -(Q45-Q47)

    Question45You create and deploy a custom Web Part.You add the Web Part to a page and receive a run-t ...

  7. 安装和配置tomcat服务器

    本文主要介绍一下tomcat服务器的安装和配置 1.获取tomcat tomcat服务器可以到它的官方网站(http://tomcat.apache.org)上下载 2.安装tomcat 具体步骤: ...

  8. Linux0.11内核剖析--内核体系结构

    一个完整可用的操作系统主要由 4 部分组成:硬件.操作系统内核.操作系统服务和用户应用程序,如下图所示: 用户应用程序是指那些字处理程序. Internet 浏览器程序或用户自行编制的各种应用程序: ...

  9. CSS 属性选择器(八)

    一.属性选择器 属性选择使用中括号进行标识,中括号内包含属性名,属性值或者属性表达式 如h1[title],h1[title="Logon"], 二.属性选择器分类 2.1.匹配属 ...

  10. IOS开发之实现App消息推送(最新)

    好久没有写过博客啦,今天就由本菜鸟给大家做一个简单的IOSApp消息推送教程吧!一切从0开始,包括XCode6, IOS8, 以及苹果开发者中心最新如何注册应用,申请证书以及下载配置概要文件,相信很多 ...