SQL语言中把数据库中两张表数据关联起来的语句
xh
kcdh
cj
kc表
kcdh
kcm
求如何把两张表的内容关联起来(kcdh)的SQL语句 展开
1、创建两张测试表,
create table test_cj(name VARCHAR(20), remark varchar2(20));
create table test_kc(name VARCHAR(20), remark varchar2(20));
2、插入测试数据
insert into test_cj values('xh','cj_1');
insert into test_cj values('kcdh','cj_2');
insert into test_cj values('cj','cj_3');
insert into test_kc values('kcdh','kc_1');
insert into test_kc values('kcm','kc_2');
3、查询两张表的总记录数,select t.*, rowid from test_cj t union all select t.*, rowid from test_kc t,
4、编写sql,两张表进行关联,select t.name, t.remark, b.remark from test_cj t, test_kc b where t.name=b.name,可以发现关联出kcdh的记录,
from cj join kc on cj.kcdh=kc.kcdh
--就这么简单。这样保证两个表的数据都能查出来。
--inner join内连接将会过滤掉不存在关联的数据的。
或者 select * from cj表 where kcdh=(select kcdh from kc表)
from cj inner join kc on (cj.kcdh = kc.kcdh)
SQL SERVER
PS 用inner join 最好。