程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了SQL分组依据和最小值(MySQL)大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决SQL分组依据和最小值(MySQL)?

开发过程中遇到SQL分组依据和最小值(MySQL)的问题如何解决?下面主要结合日常开发的经验,给出你关于SQL分组依据和最小值(MySQL)的解决方法建议,希望对你解决SQL分组依据和最小值(MySQL)有所启发或帮助;

为了获得正确的关联位置,您需要加入一个子选择,该子选择在外部主表中的距离与子选择中得出的最小距离相匹配的情况下,获得每个代码的最小距离。

SELECT a.code, a.distance
FROM   places a
INNER JOIN
(
    SELECT   code, MIN(distance) AS mindistance
    FROM     places
    GROUP BY code
) b ON a.code = b.code AND a.distance = b.mindistance
ORDER BY a.distance

解决方法

我有以下SQL:

select code,distance from places;

输出如下:

CODE    DISTANCE            LOCATION
106     386.895834130068    New York,NY
80      2116.6747774121     Washington,DC
80      2117.61925131453    Alexandria,VA
106     2563.46708627407    Charlotte,NC

我希望能够仅获取一个代码并获得最近的距离。所以我希望它返回这个:

CODE    DISTANCE            LOCATION
106     386.895834130068    New York,DC

我最初有这样的东西:

SELECT code,min(distance),location
GROUP BY code
HAVING distance > 0 
ORDER BY distance ASC

如果我不想获得与最小距离相关联的正确位置,则最小值显示效果很好。如何获取最小距离(和距离)以及正确的位置(取决于表格中插入内容的顺序,有时您可能会得到纽约距离,但夏洛特位于“位置”)。

大佬总结

以上是大佬教程为你收集整理的SQL分组依据和最小值(MySQL)全部内容,希望文章能够帮你解决SQL分组依据和最小值(MySQL)所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: