SQL SERVER 2000 查询的问题

SoulRed 2011-05-20 01:41:11
有这样的一个表:

小时| 数量
15 1
16 1
17 21
18 32
19 14
20 16
21 6

我想改成小时自0 -23
但数据库库没有0-23 字段的记录。
如何在结果集里 把小时 0-23 依次列出来。并且数据库里没有该时间段的话。把他的数量置为0

谢谢大哥们了
...全文
64 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
oO寒枫Oo 2011-05-20
  • 打赏
  • 举报
回复

tablename (hours,num)

select number-1 as hours, isnull(b.num,0) as num from master..spt_values a, tablename b
where a.number *=b.hours+1 and type='P' and
number between 1 and 24


快溜 2011-05-20
  • 打赏
  • 举报
回复
select number as 小时,
数量=(select 数量 from tb where 小时=a.number)
from master..spt_values a
where type='p' and number<24
oO寒枫Oo 2011-05-20
  • 打赏
  • 举报
回复
用常量表left join一下

34,873

社区成员

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

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