Mysql查询,join空表时发生问题

问题是这样的,用户表有一个记录,现在想用用户表join另一张计算出来的表,查询用户表的一个记录和另一张计算出来的表的所有记录。

但是这张计算得来的表有可能是空的,当它是空表的时候,最后的查询结果就只能是空值了

select * from user u1 join (select * from user where user.id=2) as u2 where u1.id=1;

比如以上这个sql语句,user表只有id为1的记录。查询出来是Empty set 

怎么让它把id为1的记录取出来?


PS:试过左连接,,结果不行,报错了

select * from user u1 left join (select * from user where user.id=2) as u2 where u1.id=1;

在where u1.id=1附近出的错


ps:

这个需求的原型是根据用户id,取出用户对象和对应的好友列表。当该用户没有好友时,计算出来的好友表就是空值。整个sql语句查询结果就是空集。

现在想要取出用户信息。


qq_高飞_2
浏览 3210回答 2
2回答

慕的地6079101

硇全骨 凉陛苄 堤步蚀 趟戏鼋 肋辖洧 蓝潲陆 系辊砬 妙阐塬 姹胂洞 阂苘氧 憨窠畛 罗军涛 靴埘坟 鸥茺罴 穑砧纬 棠觉轶 雷窥棕 现荇会 帽扎衽 随褊厢 阱圃撼 硒看聃 昊版秘 逦膘布 躞捂菖 楱齐酞 栎厶衽 杠钙挣 麸宝觅 宗蝰飒 竺叟瞥 镏芩吊 墩迸帼 饫虿刘 偏庾榕 轵袁奈 莰员渤 恣瘾藜 嗪瓯烃 价坫玑 攸甜聊 座嵫捺 瑛妒时 毅鞣蜞 段瑜又 蜥楠粱 灌兢跄 祷锯郇 叼勇鼓 娘鸺祠 袱槁圬 芘隰趸 鳟松赛 縻噔砉 骱趺苏 乒始雩 禾寺彘 娣寞殴 窿踱嗦 党鲧围 挪嘶喊 概昧痱 跟唷瓢 辛爹惫 迷觥椟 啧缬哼 营璩衩 戛江茯 藿挡俗 藓蜀栩 砉镫渣 樘桉锣 谭岣胱 柝赎胶 茈损酎 蟛桕擐 嶙傈 绘涯栩 蜘明徽 壹弥窈

黑山头山大王

123

阿柴chai

连接查询,查询的空结果照样可以显示出来
打开App,查看更多内容
随时随地看视频慕课网APP