LeetCode刷题-数据库(MySQL)- 619.只出现一次的最大数字

表 my_numbers 的 num 字段包含很多数字,其中包括很多重复的数字。

你能写一个 SQL 查询语句,找到只出现过一次的数字中,最大的一个数字吗?

num
8
8
3
3
1
4
5
6

对于上面给出的样例数据,你的查询语句应该返回如下结果:

num
6

注意:

如果没有只出现一次的数字,输出 null 。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/biggest-single-number
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

二、思路分析

看到类似找出现次数的,首先想到的是GROUP BY、COUNT()的组合使用。
这里需要注意的就是如果没有只出现一次的数字,输出NULL。所以,把上面的查询作为子查询即可。

三、代码实现

SELECT (
	SELECT
		num
	FROM
		my_numbers
	GROUP BY num
	HAVING COUNT(num) = 1
	ORDER BY num DESC
	LIMIT 1
) AS num;

你可能感兴趣的:(MySQL)