access 查询问题,急!!!!!!!!!!!!!!!!

ershixong_2353 2007-07-11 09:56:32
在win2003 + access2003 环境下开发的程序(用powerbuilder开发的),把程序和mdb文件拷到win98环境下,出现以下情况:
select count(*) into :ll_count from A where id = :ll_id and xh= :ll_xh ;
查询结果:ll_count = 0

但 select count(*) into :ll_count from A where id = :ll_id;
查询结果:ll_count > 0

select count(*) into :ll_count from A where xh= :ll_xh ;
查询结果:ll_count > 0

问题:为什么两个条件合并以后,查询出来的记录数为零?(我在win2003 + access2003 环境下查过,两个条件合并以后,查询出来的记录数不为零),是不是win98访问access的问题?
...全文
168 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
OracleRoob 2007-07-11
  • 打赏
  • 举报
回复
直接在Access内部执行试试。
OracleRoob 2007-07-11
  • 打赏
  • 举报
回复
select count(*) from A where id = 1 and xh= 2
wwwwb 2007-07-11
  • 打赏
  • 举报
回复
使用的SQL:
select count(*) from A where id = 1 and xh= 2
wwwwb 2007-07-11
  • 打赏
  • 举报
回复
1、在ACCESS中使用上述数据,ID、XH为长整型 ,结果为1;
2、检查MDB中表字段的类型,与PB程序中变量类型是否一致;
3、PB的问题请到PB版块去问吧。
ershixong_2353 2007-07-11
  • 打赏
  • 举报
回复
---- id ----- xh ------
1 1
1 2
1 3
1 4
2 1
2 2
2 3
如查,select count(*) into :ll_count from A where id = 1,结果为4
select count(*) into :ll_count from A where xh = 2,结果为2
那查select count(*) into :ll_count from A where id = 1 and xh= 2 ,理论上结果应为1吧
,但却是0
这些的查询语句是写在PB里的


wwwwb 2007-07-11
  • 打赏
  • 举报
回复
没有结果应该是没有同时满足两个条件的记录,
满足一个条件的记录,可以用OR
OracleRoob 2007-07-11
  • 打赏
  • 举报
回复

如果你想查满足两个条件其中之一条件的数据,可以用Or,而不应该用and,如:


select count(*) into :ll_count from A where id = :ll_id OR xh= :ll_xh ;
OracleRoob 2007-07-11
  • 打赏
  • 举报
回复
这说明不存在满足两个条件的记录。

逻辑上没有问题。

wwwwb 2007-07-11
  • 打赏
  • 举报
回复
两个条件与一个条件得出的结果是有可能不同的,这很正常,
没有看到你的记录,贴出来

7,732

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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