关于sql—2个日期拼装数据问题?

接分为押宝 2012-12-05 03:14:33

use master
go
create database test
go
use test
go
if exists(select 1 from sys.objects where name='tDateTime' and type='U')
drop table tDateTime
go
create table tDateTime --表名
(
id int identity primary key,
Title nvarchar(50),
StartTime datetime,
EndTime datetime
)
insert into tDateTime values('aaa','2012-08-08 00:00:00.000','2013-01-26 00:00:00.000')
insert into tDateTime values('bbb','2012-10-17 00:00:00.000','2012-10-24 00:00:00.000')
insert into tDateTime values('ccc','2012-10-17 00:00:00.000','2012-10-24 00:00:00.000')
insert into tDateTime values('ddd','2012-10-31 00:00:00.000','2012-11-07 00:00:00.000')
insert into tDateTime values('ddd','2012-09-01 00:00:00.000','2012-12-09 00:00:00.000')
insert into tDateTime values('ccc','2012-12-05 00:00:00.000','2012-12-20 00:00:00.000')
insert into tDateTime values('bbb','2012-09-03 00:00:00.000','2013-05-12 00:00:00.000')
select * from tDateTime
go

查询语句

select id,Title,StartTime,EndTime,
CONVERT(VARCHAR(4),StartTime,23) yearStart,
CONVERT(VARCHAR(4),EndTime,23) yearEnd,
CONVERT(VARCHAR(2),StartTime,10) monthStart,
CONVERT(VARCHAR(2),EndTime,10) monthEnd,
CONVERT(VARCHAR(2),StartTime,5) dayStart,
CONVERT(VARCHAR(2),EndTime,5) dayEnd,
datepart(dd,dateadd(mm,1,convert(char(8),CONVERT(datetime,'2012-12-01',120),21)+'01')-1) as Diff --当月天数
from tDateTime where 1=1 and '2012-12' between CONVERT(VARCHAR(7),StartTime,23) and CONVERT(VARCHAR(7),EndTime,23)
--其中'2012-12-01'和'2012-12'为同一个参数。(日期控件显示的年和月)


我现在拼装数据,有点蒙!
功能类似bolg发表文章日历,日历显示的年月份 为查询sql的参数 如:'2012-12-01'和'2012-12'
我现在要在日历控件上高亮显示(可上一月或下一年等) 符合StartTime,EndTime,两个字段的日期。
共有日期组装数据格式为:[2, 10, 11, 16, 15, 20] (蒙到这里了!)
并组合共有日期合集,Title的集合,也就是2条数据或N条数据都有日期2,
那么新列Title=两条数据和 如:Title="aaa"+","+"ccc"(sql不好实现,我逻辑可以自己实现)

用SQL,这个语句好复杂,用asp.net这个逻辑判断我都写蒙了. . .求大神帮忙!
...全文
211 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
快溜 2012-12-06
  • 打赏
  • 举报
回复
没看明白[2, 10, 11, 16, 15, 20]什么
接分为押宝 2012-12-06
  • 打赏
  • 举报
回复
引用 1 楼 sj490790083 的回复:
没看明白,友情帮顶
其实就是:数据库表tDateTime 中StartTime 、EndTime 为博客发表的开始关注日期,结束关注日期 日期控件显示的日期,符合tDateTime表中的开始,结束日期时间(再次时间段内),高亮显示相关的 日。 并点击Onclick,弹出这个日 共有的Title。
good-code 2012-12-06
  • 打赏
  • 举报
回复
LZ想表述点什么 把问题细化 具体的说...
cherish_55 2012-12-06
  • 打赏
  • 举报
回复
贴下代码,看看效果啊
vixx0701 2012-12-06
  • 打赏
  • 举报
回复
帮楼顶了~解决问题就是好的
手可摘星辰 2012-12-06
  • 打赏
  • 举报
回复
恭喜楼主,,,,
aluogang 2012-12-06
  • 打赏
  • 举报
回复
jfjfjf
接分为押宝 2012-12-06
  • 打赏
  • 举报
回复
引用 3 楼 ssp2009 的回复:
没看明白[2, 10, 11, 16, 15, 20]什么
可能表达有点问题,. . .不过问题解决了,谢了。 回复,散分了。
sj490790083 2012-12-05
  • 打赏
  • 举报
回复
没看明白,友情帮顶

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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