首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • sqlserver 2000 数据查询 (高手请进) [无满意答案结帖,结帖人:zhaowt_2008]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zhaowt_2008
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 结帖率:
    发表于:2008-08-19 13:25:58 楼主
    表table1
    字段PackLayer(包装级别,有五种包装级别:1,2,3,4,5),UserID(用户编码)
    包装级别,一级包装(PackLayer = 1)为最小包装,二级包装(PackLayer = 2)可以包含多个一级小包装,三级包装(PackLayer = 3)可以包含多个二级包装,以此递增

    现在按用户编码查询各个包装级别的数量:
    得到如下的表:
    UserID PackLayer为1的数量 PackLayer为2的数量 PackLayer为3的数量 ……
    0001  20                30                40 
    0002  20                0                30 
    0003  0                2                10 
    0006  0                0                0 
    0008  0                0                1   

    现在要实现困难:
    比如对于用户0002,在数据库中没有他的 PackLayer为2的数量 我在数据库中没办法把它显示出来
    请高手帮助一下,谢谢!
    20  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • fightyy
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-25 09:35:431楼 得分:0
    建表时把默认值设为0试一试.
    不太明白你的需求
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • tiancaoxing
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-26 18:21:372楼 得分:0
    没查询出来是因为你查询条件有问题;查询条件最好用表的主键来查,查出来才会唯一
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • firmrock
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-29 17:04:543楼 得分:0
    复杂,复杂的难以去想。建议设计数据库的时候,直接换算成最小单位,然后使用简单的除法将程序简单化。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • firmrock
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-29 17:05:124楼 得分:0
    复杂,复杂的难以去想。建议设计数据库的时候,直接换算成最小单位,然后使用简单的除法将程序简单化。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • hero_girl
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-09-02 08:53:325楼 得分:0
    这样子用查询做实在是很复杂,不过应该还是做的出来,需要摸索了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • Alphen
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-09-12 14:09:476楼 得分:0
    不知道你需要什么样的查询结果
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • lemonzx2008
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-09-14 16:25:247楼 得分:0
    没明白什么意思……
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zhaowt_2008
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-09-16 14:14:158楼 得分:0
    select distinct userid, workername
    , isnull(t1.一级监管码数量 ,0) 一级监管码数量
    , isnull(t2.二级监管码数量 ,0) 二级监管码数量
    , isnull(t3.三级监管码数量 ,0) 三级监管码数量
    , isnull(t4.四级监管码数量 ,0) 四级监管码数量
    , isnull(t5.五级监管码数量 ,0) 五级监管码数量
    , r.groupid, groupname
    from trescode_outputed r left join
    tgroup_worker g on r.userid = g.workerid
    ,(select 一级监管码数量=count(*) from trescode_outputed where userid = '10001' and packlayer = 1 ) t1
    ,(select 二级监管码数量=count(*) from trescode_outputed where userid = '10001' and packlayer = 2 ) t2
    ,(select 三级监管码数量=count(*) from trescode_outputed where userid = '10001' and packlayer = 3 ) t3
    ,(select 四级监管码数量=count(*) from trescode_outputed where userid = '10001' and packlayer = 4 ) t4
    ,(select 五级监管码数量=count(*) from trescode_outputed where userid = '10001' and packlayer = 5 ) t5
    where userid = '10001'
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved