语句如
SELECT COUNT(*) FROM Q2002 A LEFT JOIN Q2003 B ON A.SE2001 = B.SE2001 AND B.AYPE = a.FMAL
WHERE B.code IN(SELECT abcode FROM Q2008 where gcode='CLC2')
上面这语句出来的数据显示是0,结果错误,应该是没查出数据
SELECT COUNT(*) FROM Q2002 A LEFT JOIN Q2003 B ON A.SE2001 = B.SE2001 AND B.AYPE = a.FMAL
AND B.code IN(0305,0502,0501,0419,0605,1002,0904,0702,0810)
这数据时正确的,显示88条,
不知道是啥原因,请大牛们帮忙。
SELECT COUNT(*) FROM Q2002 A LEFT JOIN Q2003 B ON A.SE2001 = B.SE2001 AND B.AYPE = a.FMAL
WHERE B.code IN(SELECT abcode FROM Q2008 where gcode='CLC2')
上面这语句出来的数据显示是0,结果错误,应该是没查出数据
SELECT COUNT(*) FROM Q2002 A LEFT JOIN Q2003 B ON A.SE2001 = B.SE2001 AND B.AYPE = a.FMAL
AND B.code IN(0305,0502,0501,0419,0605,1002,0904,0702,0810)
这数据时正确的,显示88条,
不知道是啥原因,请大牛们帮忙。
解决方案 »
- 无法指定自定义表空间
- oracle10g冷备份+冷备份后的归档日志,能恢复数据库吗?
- 用Oracle存储过程怎么实现这个功能(急)
- 关于数据同步的问题
- 这个sql语句 怎么写?
- ORACLE服务的问题???
- 我有一个Oracle的版本,在中文系统下装的是英文,日文系统下装的是日文,哪位知道怎么在日文系统下装英文?
- 快来帮帮菜鸟呀!
- 请教--关于优化查询
- 关于Linux系统下Oracle 11.2.0.3 打 11.2.0.3.5 PSU error code 73
- 一个表的序列能不能利用触发器插入另一张表
- 哪位兄台帮忙翻译个SQL Server 2008的脚本,翻译为Oracle 10 G上能运行的(雪地狂等!!)
(
ID NUMBER(4),
F1 VARCHAR2(20)
);
INSERT INTO T165 VALUES(1, 'A');
INSERT INTO T165 VALUES(2, 'B');
INSERT INTO T165 VALUES(3, 'C');
INSERT INTO T165 VALUES(4, 'D');CREATE TABLE T166
(
ID NUMBER(4),
F2 VARCHAR2(20)
);INSERT INTO T166 VALUES(1, 'AA');
INSERT INTO T166 VALUES(2, 'BB');
INSERT INTO T166 VALUES(3, 'CC');
INSERT INTO T166 VALUES(4, 'DD');
测试结果:
没有问题的,看来还是你写的有问题,仔细检查吧。
这个语句查询没内容,否则应该一样的
这句话,看看是不是abcode带有空格,造成b.code不在abcode中。IN(0305,0502,0501,0419,0605,1002,0904,0702,0810) 没带有空格
create table t1(str varchar2(10)); ----str用varchar2类型
insert into t1 values ('1');
commit;create table t2(str char(10)); --str用char类型
insert into t2 values ('1');
commit;SQL> select * from t1 where t1.str in ('1'); --可以查出结果
STR
----------
1
SQL> select * from t1 where t1.str in (select t2.str from t2); --没有结果
STR
----------