首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

sql 连接查询有关问题

2013-11-05 
sql 连接查询问题表 A表Bidnameidname1writewrite写2readread读2write3read如果我想要得到这样的效果表Cid

sql 连接查询问题
表 A                                          表B
id     name                            id     name
1      write                           write     写
2      read                            read      读
2      write
3      read
如果我想要得到这样的效果
表C
id  name1  name2
1    空     write
2    read  write
3    read      空
请问该如何实现呢?
[解决办法]


CREATE TABLE Ta(ID VARCHAR2(10),NAME VARCHAR2(20));

INSERT INTO TA VALUES('1','write');
INSERT INTO TA VALUES('2','read');
INSERT INTO TA VALUES('2','write');
INSERT INTO TA VALUES('3','read');


SELECT  ID,(SELECT NAME FROM TA WHERE ID=TMP.ID AND NAME='read')NAME1,(SELECT NAME FROM TA WHERE ID=TMP.ID AND NAME='write')NAME2  FROM TA TMP GROUP BY ID;

ID NAME1  NAME2 
1         write 
2  read   write 
3  read         


热点排行