mysql怎么查一张表的同时查另一张表

左联(left outer join):这种查询方式会显示左表T1中的所有行,并把右表T2中符合条件的行加到左表中,不符合条件的则用NULL表示。查询语句为:select * from T1 left outer join T2 on T1.userid = T2.userid 执行结果为:userid username password jifen dengji 1 jack jackpwd 20 2 owen ...
mysql怎么查一张表的同时查另一张表
在MySQL中,联合查询是一种强大的技术,能够同时查询多个表,将结果合并成一个结果集。这种查询方式可以提高查询效率,简化复杂的SQL语句。我们以T1和T2两张表为例,来展示内联、左联、右联和全联四种联合查询的方式。

T1表结构为(用户名,密码)
userid(int)
username varchar(20)
password varchar(20)
1 jack
2 owen
T2表结构为(用户名,密码)
userid(int)
jifen varchar(20)
dengji varchar(20)
1 20
3 50

内联(inner join):这种查询方式将两个表中都存在userid的行拼成一行,适用于用户信息、积分、等级等数据的合并查询。查询语句为:
select * from T1 inner join T2 on T1.userid = T2.userid
执行结果为:
userid username password jifen dengji
1 jack jackpwd 20
3 owen 50

左联(left outer join):这种查询方式会显示左表T1中的所有行,并把右表T2中符合条件的行加到左表中,不符合条件的则用NULL表示。查询语句为:
select * from T1 left outer join T2 on T1.userid = T2.userid
执行结果为:
userid username password jifen dengji
1 jack jackpwd 20
2 owen 50 NULL NULL

右联(right outer join):这种查询方式会显示右表T2中的所有行,并把左表T1中符合条件的行加到右表中,不符合条件的则用NULL表示。查询语句为:
select * from T1 right outer join T2 on T1.userid = T2.userid
执行结果为:
userid username password jifen dengji
1 jack jackpwd 20 NULL NULL
3 owen 50 NULL NULL

全联(full outer join):这种查询方式会显示左表T1、右表T2两边中的所有行,即把左联结果表与右联结果表合并,然后过滤掉重复的。查询语句为:
select * from T1 full outer join T2 on T1.userid = T2.userid
执行结果为:
userid username password jifen dengji
1 jack jackpwd 20 NULL NULL
2 owen 50 NULL NULL
3 NULL NULL NULL 502024-12-13
mengvlog 阅读 298 次 更新于 2025-12-15 03:32:52 我来答关注问题0
檬味博客在线解答立即免费咨询

mySQL相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部