一个小小的SQL语句 问题。

My_first 2002-07-23 09:22:20
表A

bh, sl shsl
1 20 20
1 30 30
2 15 16
2 15 15

当sl=shsl时我返回一个True, 相返得到一个假值。

像向面的这四条记录, 得到结果是
最后返回一个 bh=1 的记录。 而bh=2 (15,16) 这两数不相等
...全文
43 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
My_first 2002-07-23
  • 打赏
  • 举报
回复
是的,你说得对, 谢谢
Yang_ 2002-07-23
  • 打赏
  • 举报
回复
我想你要的是每个BH只要有一条sl<>shsl 就要返回FALSE。

select bh,MIN(CASE WHEN ISNULL(sl,0)=ISNULL(shsl,0) THEN 1 ELSE 0 END)AS STATUE FROM jhddmxb
GROUP BY BH

这样可以一次返回所有BH的状态,0表示有没有相等的记录,1表示全部相等。
goodhazel 2002-07-23
  • 打赏
  • 举报
回复
select distinct bh where sl=shsl //想等的

select distinct bh where sl<>shsl //不等的
My_first 2002-07-23
  • 打赏
  • 举报
回复
select * from jhddmxb
where bh=1 and isnull(sl,0)<>isnull(shsl,0))

然后再判断表recordcound>0 如果是则表示有记录正确。 相反还没处理完。


我想这可以. 问题搞定,仔细一看,就这么简单。 不好意思

我这还有一个问题, 一共加上是270分哦。
http://www.csdn.net/expert/topic/896/896616.xml?temp=.1024744

5,939

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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