mysql – 返回值的SQL视图,如果未找到则返回null
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了mysql – 返回值的SQL视图,如果未找到则返回null,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1636字,纯文字阅读大概需要3分钟。
内容图文
![mysql – 返回值的SQL视图,如果未找到则返回null](/upload/InfoBanner/zyjiaocheng/908/6ca2b7b49ba846a18715381399f1edc0.jpg)
我不认为这可以做到,但因为我是一个使用MSSM工作室进行SQL数据库的新手,我想我还是会问.
我有2个表并使用视图来查看匹配的记录.表2有时没有匹配的记录,所以他们自然不会在我的视图中显示.例如:
A-1
B-2
C-3
我真正需要的是视图向我展示表2中匹配记录的内容,但同时告诉我没有找到其他内容:
A-1
B-2
C-3
D-"Not Found"
E-"Not Found"
通过这种方式,我可以完全按照我的需要准备我的视图,但可以查看表2中没有的视图.希望有人可以帮我找到完成此操作的方法.提前致谢.
– – – – 编辑 – – – – –
好的,所以第一个表(GoogleBusinessData)拥有.其他东西,客户网站.第二个表(EmailTable)包含许多电子邮件地址.常见链接是BusWebsite列.
SELECT dbo.GoogleBusinessData.BusWebsite, dbo.EmailTable.EmailNumberOfEmails
FROM dbo.GoogleBusinessData
INNER JOIN dbo.EmailTable ON dbo.GoogleBusinessData.BusWebsite = dbo.EmailTable.EmailWebsite
这里的问题是,它会列出网站匹配时出现的电子邮件,但我希望能够从dbo.GoogleBusinessData.BusWebsite列出我的所有数据,如果它与EmailTable.EmailWebsite匹配,那么它会显示dbo.EmailTable.EmailNumberOfEmails中的数字,但是如果找不到,则显示“Not Found”.
解决方法:
在Table1和Table2之间使用LEFT JOIN(也称为LEFT OUTER JOIN)
并使用
CASE WHEN Table2.Key IS NULL THEN 'Not Found' ELSE Table2.RelatedColumn END
在您的SELECT列表中.
SELECT
gbd.BusWebsite,
CASE WHEN et.EmailNumberOfEmails IS NULL
THEN 'Not Found'
ELSE et.EmailNumberOfEmails
END
et.EmailNumberOfEmails
FROM dbo.GoogleBusinessData gbd
LEFT JOIN dbo.EmailTable et ON gbd.BusWebsite = et.EmailWebsite
The result of a left outer join (or simply left join) for tables A and
B always contains all records of the “left” table (A), even if the
join-condition does not find any matching record in the “right” table
(B).
内容总结
以上是互联网集市为您收集整理的mysql – 返回值的SQL视图,如果未找到则返回null全部内容,希望文章能够帮你解决mysql – 返回值的SQL视图,如果未找到则返回null所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。