网站建设资讯

NEWS

网站建设资讯

mysql怎么建立关联表,mysql如何关联表

mysql怎么让2个表关联起来

方法和操作步骤如下:

清苑ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:028-86922220(备注:SSL证书合作)期待与您的合作!

1、首先,创建一个测试表,如下图所示,然后进入下一步。

2、其次,插入测试数据,如下图所示,然后进入下一步。

3、接着,完成上述步骤后,查询表中的数据,“select t.* from test_tbl2 t ”,如下图所示,然后进入下一步。

4、最后,完成上述步骤后,编写sql,两个表通过pid与id关联, “select t1.*, t2.* from test_tbl1 t1 join test_tbl2 t2 on t1.p_id = t2.id;”,如下图所示。这样,问题就解决了。

MySQL自关联表

create table node_tree( id int not null auto_increment primary key, node_name varchar(128) not null default '', up_node_id int, node_level char(1) )ENGINE=InnoDB default charset=utf8 collate=utf8_swedish_ci;

insert into node_tree(node_name,up_node_id,node_level) values('jx',null,'1'),('jx.webserver',1,'2'),('jx.webserver.nginx1', 2, '3'), ('jx.logserver', 1, '2');

select

node_tree1.id as 主表ID,

node_tree1.name as 主表名字,

node_tree2.name as 从表名字,

node_tree2.up_id as 从表上级ID

from node_tree1, node_tree2

where node_tree1.name='jx';

select

node_tree1.id as 主表ID,

node_tree1.node_name as 主表名字,

node_tree2.node_name as 从表名字,

node_tree2.up_node_id as 从表上级ID

from node_tree as node_tree1, node_tree as node_tree2

where node_tree1.node_name='jx';

mysql 中怎么关联表

第一:内联(inner join)

如果想把用户信息、积分、等级都列出来,那么一般会这样写:

select * from T1, T3 where T1.userid = T3.userid

(其实这样的结果等同于select * from T1 inner join T3 on T1.userid=T3.userid )。

把两个表中都存在userid的行拼成一行(即内联),但后者的效率会比前者高很多,建议用后者(内联)的写法。

SQL语句:

select * from T1 inner join T2 on T1.userid = T2.userid

运行结果

T1.userid username password T2.userid jifen dengji

1 jack jackpwd 1 20 3

第二:左联(left outer join)

显示左表T1中的所有行,并把右表T2中符合条件加到左表T1中;

右表T2中不符合条件,就不用加入结果表中,并且NULL表示。

SQL语句:

select * from T1 left outer join T2 on T1.userid = T2.userid

运行结果

T1.userid username password T2.userid jifen dengji

1 jack jackpwd 1 20 3

2 owen owenpwd NULL NULL NULL

第三:右联(right outer join)。

显示右表T2中的所有行,并把左表T1中符合条件加到右表T2中;

左表T1中不符合条件,就不用加入结果表中,并且NULL表示。

SQL语句:

select * from T1 right outer join T2 on T1.userid = T2.userid

运行结果

T1.userid username password T2.userid jifen dengji

1 jack jackpwd 1 20 3

NULL NULL NULL 3 50 6

第四:全联(full outer join)

显示左表T1、右表T2两边中的所有行,即把左联结果表 + 右联结果表组合在一起,然后过滤掉重复的。

SQL语句:

select * from T1 full outer join T2 on T1.userid = T2.userid


分享题目:mysql怎么建立关联表,mysql如何关联表
网站地址:http://cdweb.net/article/hecsgi.html