请教问题:两个表多条件查询

徐徐透之 2020-06-30 10:18:17
表1和表2两个表,以表2为主,如果表1的jg是空值,或者表1jg<表2dj,则表1的jg显示9999,否则是表1的jg原来的值,
这个应该怎么写



...全文
205 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
CAIDANNI 2020-07-02
  • 打赏
  • 举报
回复
case when能解决
徐徐透之 2020-06-30
  • 打赏
  • 举报
回复
引用 1 楼 js14982 的回复:
select a.it_id,case when a.jg is null or a.jg<b.dh then 9999 else a.jg end jg from 表1 a,表2 b where b.it_id=a.it_id(+)
你好,我用您的测试,如果表1的100002我删掉了,就是表1的100002为空,在查询时,表2的100002也不见了
js14982 2020-06-30
  • 打赏
  • 举报
回复
select a.it_id,case when a.jg is null or a.jg<b.dh then 9999 else a.jg end jg from 表1 a,表2 b where b.it_id=a.it_id(+)
js14982 2020-06-30
  • 打赏
  • 举报
回复
引用 2 楼 pdxufeng 的回复:
[quote=引用 1 楼 js14982 的回复:] select a.it_id,case when a.jg is null or a.jg<b.dh then 9999 else a.jg end jg from 表1 a,表2 b where b.it_id=a.it_id(+)
你好,我用您的测试,如果表1的100002我删掉了,就是表1的100002为空,在查询时,表2的100002也不见了[/quote] 不会啊,你是怎么查询的,我这个写的就是以表2为主表来进行的外连接。 [ from 表1 a,表2 b where b.it_id=a.it_id(+) ] 等于 [ from 表1 a right join 表2 b on b.it_id=a.it_id ]

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧