有3个表 a表,b表,c表.
其中a表为主表,b与c表都为中间表a表col1与col2是联合主键,
a表
col1值如下:
200153000511
200153000511
200153000511col2值如下:
0,1,2其中a表中的col3字段值分别为:519,99999,99993.b表字段为:type_id,newid
其中type_id值为:99999,99992,99996c表字段为:s_type_id,prod_id
其中s_type_id值为:519,104,103,
prod_id值为:1000107,1000102
目的主要是获得b表中的newid与c表中的prod_id,
通过a表中的col3字段的99999与519来获得.
但是,a表中的主键是联合主键,实现通过a表中的col3字段值 99999与519来把b表与c表的值带出来?麻烦高手给看看 谢谢!
其中a表为主表,b与c表都为中间表a表col1与col2是联合主键,
a表
col1值如下:
200153000511
200153000511
200153000511col2值如下:
0,1,2其中a表中的col3字段值分别为:519,99999,99993.b表字段为:type_id,newid
其中type_id值为:99999,99992,99996c表字段为:s_type_id,prod_id
其中s_type_id值为:519,104,103,
prod_id值为:1000107,1000102
目的主要是获得b表中的newid与c表中的prod_id,
通过a表中的col3字段的99999与519来获得.
但是,a表中的主键是联合主键,实现通过a表中的col3字段值 99999与519来把b表与c表的值带出来?麻烦高手给看看 谢谢!
-------------------- -- ----------
200153000511 0 519
200153000511 1 99999
200153000511 2 99993已用时间: 00: 00: 00.01
14:11:04 scott@TUNGKONG> select * from b;TYPE_ID NEWID
---------- ----------
99999 newid
99992 newid2
99996 newid3已用时间: 00: 00: 00.01
14:11:09 scott@TUNGKONG> select * from c;S_T PROD_ID
--- ----------
519 1000107
104 1000102
103 prod_id已用时间: 00: 00: 00.00
14:11:14 scott@TUNGKONG> select a.*,col4 from a,(select type_id col,newid col4 from b union all select s_type_id,prod_id from c) b where a.col3=b.col(+);COL1 CO COL3 COL4
-------------------- -- ---------- ----------
200153000511 1 99999 newid
200153000511 0 519 1000107
200153000511 2 99993已用时间: 00: 00: 00.00描述不是很清楚啊,
不知道楼主是不是想要这个样子啊