公共配置表
配置ID 配置内容
1 内容1
2 内容2
个人配置表
用户ID 配置ID 配置内容
admin 2 内容3
我想查询用户admin配置的时候出现的结果
配置ID 配置内容
1 内容1
2 内容3
就是查询出所有配置内容,如果该用户有个人配置,则覆盖公共配置的内容
求大神帮忙
sql
------解决方案--------------------
公共配置表是谁配置的?
------解决方案--------------------
SQL> create table pubcfg(id number,content varchar2(10));
表已创建。
SQL> create table usercfg(userid varchar2(10),id number,content varchar2(10));
表已创建。
SQL> insert into pubcfg values(1,'content1');
已创建 1 行。
SQL> insert into pubcfg values(2,'content2');
已创建 1 行。
SQL> insert into usercfg values('admin',2,'content3');
已创建 1 行。
SQL> commit;
提交完成。
SQL> select nvl(b.id,a.id),nvl(b.content,a.content)
2 from pubcfg a
3 left join usercfg b
4 on a.id=b.id
5 and b.userid='admin';
NVL(B.ID,A.ID) NVL(B.CONT
-------------- ----------
2 content3
1 content1
SQL>