主从表关联查询的问题,大家帮忙看看!
现有A B 两表,A表为主表,B表多条记录对应A表
怎么让记录按照A表展示啊,B表如果有多条记录链接的时候只显示随机一条
比如说
A
id name
1 || A
2 || B
3 || C
B
id name aid
1 ||a || 1
2 ||b || 1
3 ||c || 2
怎么样让结果这样显示
1 A a
---------------
2 B c
----------------
3 C
---------------------
我只想到一种方式
select A.id ,A.name,(select B.name from b where b.aid=a.id and rownum=1) bname from A
可是这样写的话一旦字段多的话会不会影响性能。
如果用 left join 可否实现.
------解决方案--------------------select pt.*,row_number() over(partition by pt.CODE order by pt.TS desc) row_index from pt
但不是随机的取一条