一个表运用内连接

一、 abs函数
number数字类型函数
ABS(x) 函数,此函数用来返回一个数的绝对值

在这里插入图片描述

讲解:自己建立一个内链接,然后相减找出最小值

select min(abs(p1.x-p2.x)) as shortest
from 
point p1,point p2
where
p1.x!=p2.x

二、
POWER
返回给定表达式乘指定次方的值。
SQRT
函数用来找出任何数的平方根

在这里插入图片描述
两点间的距离公式

sqrt(pow(p1.x-p2.x,2)+pow(p1.y-p2.y,2)),2

round 保留两位小数

运用内连接,建立p2表,且x1!=x2 ,y1!=y2

select round(min(sqrt(pow(p1.x-p2.x,2)+pow(p1.y-p2.y,2))),2) shortest
from point_2d p1,point_2d p2
where
p1.x!=p2.x
or 
p1.y!=p2.y

三、 union all
在这里插入图片描述
注意:union all 可以上下同时写两个select

select id,count(*) as num
from (
    select requester_id as id from request_accepted union all
    select accepter_id from request_accepted
) as temp
group by id 
order by num desc 
limit 1 ;

各种连接详解:

https://www.cnblogs.com/reaptomorrow-flydream/p/8145610.html

注意的是,from 的是表1,join 的是表2

LEFT JOIN产生表1的完全集,而2表中匹配的则有值,没有匹配的则以null值取代。

RIGHT JOIN产生表2的完全集,而1表中匹配的则有值,没有匹配的则以null值取代。

FULL OUTER JOIN产生1和2的并集。但是需要注意的是,对于没有匹配的记录,则会以null做为值。

INNER JOIN产生的结果集中,是1和2的交集。 inner join = join ,内连接是最常见的一种连接,只连接匹配的行。

发布了4 篇原创文章 · 获赞 0 · 访问量 45

猜你喜欢

转载自blog.csdn.net/meira_go/article/details/104837581