select的问题

mlmary 2003-06-14 06:15:56
这样一条词句
select * form mytable where 被除数/除数>5 and 除数>0
本意是为了避免0做除数,所以才加上“除数>0”这个条件,
但实际这样并不能实现

请问该如何解决呢?
谢谢
...全文
11 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
mlmary 2003-06-15
  • 打赏
  • 举报
回复
感谢 CrazyFor(蚂蚁) ,请问tem是什么?

感谢zjcxc(邹建),我尝试过这样写,但有时行,有时不行,因为where条件很多,也没总结出规律来:(
mlmary 2003-06-15
  • 打赏
  • 举报
回复
感谢大家!
nboys 2003-06-15
  • 打赏
  • 举报
回复

select * from (select * form mytable where 除数<>0 and isnull(除数,0)<>0) tem where 被除数/除数>5

其中这个tem是一各虚拟表,把(select * form mytable where 除数<>0 and isnull(除数,0)<>0)查询出来的数据当成一个表来操作
nboys 2003-06-15
  • 打赏
  • 举报
回复


select * form mytable where 除数<>0 and isnull(除数,0)<>0 and 被除数/isnull(nullif(除数,0),1)>5
97866 2003-06-15
  • 打赏
  • 举报
回复
select * form mytable where IsNull(除数,0)<>0
and (被除数/IsNull(NULLIF(除数,0),1))>5
Select 语句不是有个条件:IsNull(除数,0)<>0 吗,
如果除数为0那Select语句条件当然不成立了 :)
CrazyFor 2003-06-14
  • 打赏
  • 举报
回复
select * from (select * form mytable where 除数>0) tem where 被除数/除数>5
这样绝对可行。:)
zjcxc 元老 2003-06-14
  • 打赏
  • 举报
回复
将除数>0这个条件放在前面
select * form mytable where 除数>0 and 被除数/除数>5

mlmary 2003-06-14
  • 打赏
  • 举报
回复
谢谢 97866(weiLuang)
这样写是不会出错了,但是我想让“除数=0”的记录不参加运算,该如何做呢?
wuhong 2003-06-14
  • 打赏
  • 举报
回复
select * from mytable where 被除數/除數>5 不管是除數為0,還是被除數為0,都不顯示該行的
97866 2003-06-14
  • 打赏
  • 举报
回复
select * form mytable where (被除数/IsNull(NULLIF(除数,0),1))>5 and 除数>0
haiweiwei 2003-06-14
  • 打赏
  • 举报
回复
第一,看看你的被除数和除数是什么类型,是否类型匹配;第二,试试将除数>0改为除数<>0;第三,如果你的这句话是PB里的嵌入语句,末尾应该加分号;第四,你的语句里的命令有误,不是form,而是from。
检查一下吧,你的想法是没有问题的,估计问题出在小细节上。

34,575

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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