sanhuv
2016-05-24 03:29
采纳率: 60%
浏览 9.1k
已采纳

oracle从一张表中根据不同条件查询出两个结果 然后查出两个结果中相同的数据

这是表中数据
图片说明
我用下面这种方法
select * from ((select * from SFFX_JGJPZ_DETAIL d where d.jgjpz_id=1) o),
((select * from SFFX_JGJPZ_DETAIL d where d.jgjpz_id=8) t)
where o.platename=t.platename ;
查出来的结果对的 却在一行
图片说明
怎么解决。。

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • 中国风 2016-05-24 04:19
    已采纳

    select * from SFFX_JGJPZ_DETAIL d where d.jgjpz_id IN (1,8)

    --这样用,条件用in

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • 留得青山在 2016-05-24 06:51

    select * from (select * from SFFX_JGJPZ_DETAIL d where d.jgjpz_id=1 and d.platename IN(select platename from SFFX_JGJPZ_DETAIL A where A.jgjpz_id=8)) t UNION
    select * from (select * from SFFX_JGJPZ_DETAIL d where d.jgjpz_id=8 and d.platename IN(select platename from SFFX_JGJPZ_DETAIL A where A.jgjpz_id=1)) b

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题