当前位置:编程学习 > C#/ASP.NET >>

请教一个关于判断数量的问题

class表

id   classname  bigid
1    大类一      0
2    小类一      1
3    大类二      0
4    大类三      0
5    小类二      1
6    小类三      3
.
.
.
//这是一个类别的表,其中通过bigid来实现大小类的区分及关联,bigid对应前面的id,如果bigid是0,表示它是大类,如果bigid不是0,则表示它是该id的小类,通过下面代码调出相关的类别

public string classall()
    {

        //连接数据库
        SqlCommand cmd = new SqlCommand("SELECT * FROM class where bigid=0", objConnection);
        //省略
        while (dr.Read())
        {
            strBody += "" + dr["classname"] + "";
        }
        //关闭
    }

//要实现的是,调出的大类如果有小类,则在大类后面出现 “有小类”,三个字,请问这个该怎么实现呢?在上面的代码中该怎么修改呢?谢谢
--------------------编程问答-------------------- 那再数据库中再加一列,就是上级ID的,在SQL语句中用CASE判断啊!
--------------------编程问答-------------------- Up --------------------编程问答-------------------- 我已经加了bigid作为上级ID啊
CASE具体该怎么做呢? --------------------编程问答--------------------

SELECT  id , classname , bigid ,
(case when (select count(*) from class  where id = id  ) = 0
then ''
else
N'有小类'
end ) as tag

 FROM class 
where bigid=0
--------------------编程问答-------------------- select * into #a from table1 where bigid=0
select classname=case when a.id=b.上级ID then a.classname+'有小类'end
from #a a,table1 b 

drop table #a

结果是能出来的,但还有很多NULL列,还有点问题,你再试试吧。可能我的方法也不好! --------------------编程问答-------------------- 多学习学习了,呵呵,四楼的好 --------------------编程问答-------------------- 不过好像有点问题,我一个大类没有小类的也显示有小类的嘛 --------------------编程问答-------------------- .net中有
if then 用法?
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,