SQL数据库如何实现联合查询?谢谢!(sql语句联合查询)

 我来答
猪八戒网
2023-04-26 · 百度认证:重庆猪八戒网络有限公司官方账号
猪八戒网
猪八戒网(zbj.com)创建于2006年,现已形成猪八戒网、天蓬网和线下八戒工场的“双平台+一社区”服务模式,是中国领先的人才共享平台。
向TA提问
展开全部

联合查询效率较高.以下例子来说明联合查询的好处

t1表结构(用户名,密码)useridintusernamevarchar(20)passwordvarchar(20)

1jackjackpwd

2owenowenpwd

t3表结构(用户积分,等级)useridintjfintdjint

1203

3506

第一:内联(innerjoin)

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

select*fromt1,t3wheret1.userid=t3.userid其实这样的结果等同于select*fromt1innerjoint3ont1.userid=t3.userid

就是把两个表中都存在userid的行拼成一行.这是内联.但后者的效率会比前者高很多.建议用后者的写法.

运行结果:useridusernamepassworduseridjfdj

1jackjacjpwd1203

第二:左联(leftouterjoin)显示左表中的所有行

select*fromt1leftouterjoint3ont1.userid=t3.userid

运行结果:useridusernamepassworduseridjfdj

1jackjackpwd1203

2owenowenpwdNULLNULLNULL

第三:右联(rightouterjoin)显示右表中的所有行

select*fromt1rightouterjoint3ont1.userid=t3.userid

运行结果:useridusernamepassworduseridjfdj

1jackjackpwd1203

NullNullNull3506

第四:全联(fullouterjoin)显示两边表中所有行

select*fromt1fullouterjoint3ont1.userid=t3.userid

运行结果:useridusernamepassworduseridjfdj

1jackjackpwd1203

2owenowenpwdNULLNULLNULL

NullNullNull3506

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式