问一个奇怪的问题,关于select

leojay1 2006-09-24 05:48:58
select distinct bdqyxx_id from GQBDWXX where XMXX_ID = '20060924000091070'
运行过后的结果是:20060924000091071

select * from bdqyxx qy where qy.bdqyxx_id in('20060924000091071')
这句话也有数据

但是我把两句结合起来就出问题了
select * from bdqyxx qy where qy.bdqyxx_id in(select distinct bdqyxx_id from GQBDWXX where XMXX_ID = '20060924000091070')
居然没有数据~~~~
麻烦帮一下忙,急!
...全文
146 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
wiler 2006-09-24
  • 打赏
  • 举报
回复
SQL> create table GQBDWXX (
2 XMXX_ID varchar2(50),
3 bdqyxx_id varchar2(50)
4 );

Table created

SQL> create table bdqyxx (
2 bdqyxx_id varchar2(50)
3 );

Table created

SQL> insert into GQBDWXX values('20060924000091070','20060924000091071');

1 row inserted

SQL> insert into bdqyxx values('20060924000091071');

1 row inserted

SQL> commit;

Commit complete

SQL> select * from bdqyxx qy
2 where qy.bdqyxx_id in(
3 select distinct bdqyxx_id
4 from GQBDWXX where XMXX_ID = '20060924000091070'
5 );

BDQYXX_ID
--------------------------------------------------
20060924000091071

-----------------------------------------
我的测试是通过的
楼主可换成这样的脚本,肯定能出数据:
select * from bdqyxx qy
where exists (
select b.bdqyxx_id from GQBDWXX b
where b.XMXX_ID = '20060924000091070' and qy.bdqyxx_id =b.bdqyxx_id
)
Eric_1999 2006-09-24
  • 打赏
  • 举报
回复
select * from bdqyxx qy where qy.bdqyxx_id =(select distinct bdqyxx_id from GQBDWXX where XMXX_ID = '20060924000091070')

select * from bdqyxx qy where qy.bdqyxx_id exist(select 1 from GQBDWXX where XMXX_ID = '20060924000091070')

楼主,这两句有数据吗?
wiler 2006-09-24
  • 打赏
  • 举报
回复
请确定表GQBDWXX的列bdqyxx_id没有空值(null)

17,377

社区成员

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

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