酷似多表查询问题,求sql文
有三张表A,B,C。
A表字段部分如下:
JTB_DIV_CD,ADDRESSEE, INQUIRY_ACTION_PLAN_DATE
B表字段部分如下:
JTB_DIV_CD,MESSAGE_ADDRESSEE,MESSAGE_ACTION_PLAN_DATE
C表字段部分如下:
JTB_DIV_CD,ADDRESS, NOTE_ACTION_PLAN_DATE
以上每个表的字段属性相对应,
求一sql语句,得到如下结果:
JTB_DIV_CD ADDRESSEE DATE
--------------------------------------------
A表JTB_DIV_CD A表ADDRESSEE A表DATE
A表JTB_DIV_CD A表ADDRESSEE A表DATE
B表JTB_DIV_CD B表ADDRESSEE B表DATE
A表JTB_DIV_CD A表ADDRESSEE A表DATE
C表JTB_DIV_CD C表ADDRESSEE C表DATE
A表JTB_DIV_CD A表ADDRESSEE A表DATE
C表JTB_DIV_CD C表ADDRESSEE C表DATE
A表JTB_DIV_CD A表ADDRESSEE A表DATE
也就是向把这三张表的这三个字段的数据分别归纳到一起,而且有两个需求。
1。最终结果要按DATE字段排序。
2。最终结果需要第1行到100行的数据
各位大侠们!出手把!谢谢
------解决方案--------------------用一个比较笨的方法:
select * from
(select * from
(select JTB_DIV_CD as JTB_DIV_CD£¬ADDRESSEE as ADDRESSEE£¬ INQUIRY_ACTION_PLAN_DATE as DATE from A
union
select JTB_DIV_CD£¬MESSAGE_ADDRESSEE£¬MESSAGE_ACTION_PLAN_DATE from B
union
select JTB_DIV_CD£¬ADDRESS£¬ NOTE_ACTION_PLAN_DATE from C
)
order by date
)
where rownum < 101