sql – 如何使用带有过滤器where子句的oracle外连接
发布时间:2021-03-31 00:28:14 所属栏目:MsSql教程 来源:网络整理
导读:如果我写一个SQL: select * from a,b where a.id=b.id(+) and b.val="test" 并且我希望b中相应记录所在的所有记录都不存在或者存在val =“test”,这是正确的查询吗? 解决方法 使用ANSI语法会好得多 SELECT * FROM a LEFT OUTER JOIN b ON( a.id = b.id and
|
如果我写一个SQL: select *
from a,b
where a.id=b.id(+)
and b.val="test"
并且我希望b中相应记录所在的所有记录都不存在或者存在val =“test”,这是正确的查询吗? 解决方法使用ANSI语法会好得多SELECT *
FROM a
LEFT OUTER JOIN b ON( a.id = b.id and
b.val = 'test' )
您也可以使用Oracle的语法执行相同的操作,但它有点紧张 SELECT * FROM a,b WHERE a.id = b.id(+) AND b.val(+) = 'test' 请注意,在这两种情况下,我都忽略了c表,因为您没有指定连接条件.而且我假设你真的不想加入A到B然后用C生成笛卡尔积. (编辑:海洋资讯信息网_我爱站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- sql-server – 为什么在SQL Server 2012中设置空结果的查询
- sqlserver 中时间为空的处理小结
- 学习 – 为什么数据库管理如此困难?
- sql-server-2008-r2 – 将SQL Server 2008 R2表/数据从开发
- SQL Server下split函数功能与用法是什么?
- sqlserver中如何寻找出连续日期记录的代码
- sql-server – SQL Server中的树结构数据查询
- sql – 从to_char()输出中删除空白填充
- 数据库设计 – 在逻辑/布尔数据库字段中使用[0,1]与[“Y”,
- sql-server – bulk_logged和简单恢复模型有什么区别?最低
站长推荐
热点阅读

