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