如何编写一个查询来返回_users表中具有login_name或user_name的所有记录的所有信息,并以字母“ a%”开头,并将这些信息与表连接:_skills(所有信息)_urls(所有信息)在github_skills上,联接为基于user_id,_skills中的user_id是_users中的source_id,_urls中的id是_users中的id。
我这样写
SELECT * from stackoverflow_users u, stackoverflow_skills s,github_urls l where s.user_id=u.source_id and l.id=u.id and u.user_name like 'a%';
在这里,我想把空文件也放到哪里。
请帮我。
您的查询应为您提供在所有三个表中都匹配的行。如果您希望所有用户即使在一个或两个其他表中都不匹配,请使用LEFT JOIN:
select *
from stackoverflow_users u
left join stackoverflow_skills s on s.user_id = u.source_id
left join github_urls l on l.id = u.id
where u.user_name like 'a%';
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句