leetcode-SQL-619. 只出现一次的最大数字

简介: leetcode-SQL-619. 只出现一次的最大数字

题目

题目链接

MyNumbers 表:

+-------------+------+
| Column Name | Type |
+-------------+------+
| num         | int  |
+-------------+------+
这张表没有主键。可能包含重复数字。
这张表的每一行都含有一个整数。

单一数字 是在 MyNumbers 表中只出现一次的数字。

请你编写一个 SQL 查询来报告最大的 单一数字 。如果不存在 单一数字 ,查询需报告 null 。

查询结果如下例所示。

示例 1:

输入:
MyNumbers 表:
+-----+
| num |
+-----+
| 8   |
| 8   |
| 3   |
| 3   |
| 1   |
| 4   |
| 5   |
| 6   |
+-----+
输出:
+-----+
| num |
+-----+
| 6   |
+-----+
解释:单一数字有 1、4、5 和 6 。
6 是最大的单一数字,返回 6 。

示例 2:

输入:
MyNumbers table:
+-----+
| num |
+-----+
| 8   |
| 8   |
| 7   |
| 7   |
| 3   |
| 3   |
| 3   |
+-----+
输出:
+------+
| num  |
+------+
| null |
+------+
解释:输入的表中不存在单一数字,所以返回 null 。

解题

只能用子查询,因为存在null的情况

select max(t.num) as num
from (
    select num
    from MyNumbers
    group by num
    having count(num)=1
)as t;

或者

套一层select,去包含null的i情况

SELECT(
  SELECT num
  FROM my_numbers 
  GROUP BY num
  HAVING COUNT(num)=1
  ORDER BY num DESC
  LIMIT 0,1
) select_num


相关文章
|
7月前
|
SQL
leetcode-SQL-180. 连续出现的数字
leetcode-SQL-180. 连续出现的数字
41 0
|
7月前
|
SQL
leetcode-SQL-
leetcode-SQL-
28 0
|
5月前
|
SQL 数据库
SQL AND运算符
【7月更文挑战第11天】SQL AND运算符。
34 2
|
7月前
|
SQL
leetcode-SQL-607. 销售员
leetcode-SQL-607. 销售员
33 0
|
7月前
leetcode-SQL-584. 寻找用户推荐人
leetcode-SQL-584. 寻找用户推荐人
40 0
|
SQL 存储 安全
【SQL刷题】Day3----SQL必会的常用函数专项练习
【SQL刷题】Day3----SQL必会的常用函数专项练习
186 0
【SQL刷题】Day3----SQL必会的常用函数专项练习
|
SQL
牛客题霸刷题-SQL必知必会50道
SQL每个人都要用,但是用来衡量产出的并不是SQL本身,你需要用这个工具,去创造其它的价值。
352 31
牛客题霸刷题-SQL必知必会50道
|
SQL 机器学习/深度学习 关系型数据库
【SQL刷题】Day11----SQL通配符专项练习
【SQL刷题】Day11----SQL通配符专项练习
153 0
【SQL刷题】Day11----SQL通配符专项练习
|
SQL 机器学习/深度学习 关系型数据库
【SQL刷题】Day4----SQL计算函数专项练习
【SQL刷题】Day4----SQL计算函数专项练习
164 0
【SQL刷题】Day4----SQL计算函数专项练习
下一篇
DataWorks