返回顶部

1个表A多个字段a,b,关联另一个表B的一个字段c,并取出B表的d字段,如何写sql

方式有两种,第一种如下:

A数据表中多个字段对应B数据表的ID,

现在要把B表的其他字段一起查询出来

一、数据表:

 1、SPEED_DETECTION_ROAD


一、数据表:

 1、SPEED_DETECTION_ROAD

 

它的 START_POINT_ID 和 END_POINT_ID字段对应下面表的ID,

2、SECTION_INFO:

 

二、sql语句

SELECT
section1.SECTION_NAME AS sectionStart,
section2.SECTION_NAME AS sectionEND
FROM A表 AS road
inner join B表 AS section1
on road.START_POINT_ID = section1.SECTION_ID
inner join B表 AS section2
on road.END_POINT_ID = section2.SECTION_ID

思路:

SPEED_DETECTION_ROAD表有两个字段是SECTION_INFO表的ID,因此,Inner Join 数据表SECTION_INFO两次(join方式看业务)

三、查询结果

 

方法二:

sql:  其实就是嵌套子查询实现的。

SELECT   road.road_name,
(select SECTION_NAME from  B表 where road.START_POINT_ID =  b.SECTION_ID ) as  sectionStart,
(select SECTION_NAME from  B表 where road.END_POINT_ID =  b.SECTION_ID) as  sectionEND
        FROM A表 AS road

 

参考文章:https://blog.csdn.net/weixin_36013896/article/details/122403107

posted @ 2024-04-14 21:41  fen斗  阅读(614)  评论(0)    收藏  举报