数据库
首页 > 数据库> > LeetCode刷题-数据库(MySQL)- 613.直线上的最近距离

LeetCode刷题-数据库(MySQL)- 613.直线上的最近距离

作者:互联网

613.直线上的最近距离

一、题目描述

表 point 保存了一些点在 x 轴上的坐标,这些坐标都是整数。

写一个查询语句,找到这些点中最近两个点之间的距离。

x
-1
0
2

最近距离显然是 ‘1’ ,是点 ‘-1’ 和 ‘0’ 之间的距离。所以输出应该如下:

shortest
1

注意:每个点都与其他点坐标不同,表 table 不会有重复坐标出现。

进阶:如果这些点在 x 轴上从左到右都有一个编号,输出结果时需要输出最近点对的编号呢?

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

二、思路分析

两表自连(笛卡尔乘积),取出来左右两表对应值之差大于0且最小的值。

三、代码实现

SELECT
	min(a.x - b.x) AS shortest
FROM
	point a,
	point b
WHERE
	a.x - b.x > 0;

标签:point,613,距离,最近,坐标,MySQL,LeetCode,shortest
来源: https://blog.csdn.net/weixin_41723227/article/details/99713546