不知道为什么,这么写就对了的------MSSQL引号和时间日期
2011-12-19 16:07
316 查看
declare @mouth int
--declare @start datetime
--declare @end datetime
declare @start nvarchar(20)
declare @end nvarchar(20)
declare @str nvarchar(3000)
declare @sql nvarchar(3000)
set @mouth=1
while @mouth<=12
begin
if @mouth=12
begin
set @start='2011-'+STR(@mouth)+'-1'
--set @start=cast(@str as datetime)
set @end='2012-'+STR(@mouth)+'-1'
--set @end=cast(@str as datetime)
end
else
begin
set @start='2011-'+ltrim(rtrim(STR(@mouth)))+'-1'
--set @start=cast(@str as datetime)
set @end='2011-'+ltrim(rtrim(STR(@mouth+1)))+'-1'
--set @end=cast(@str as datetime)
end
set @sql=N'select '+ltrim(rtrim(cast(@mouth as CHAR)))+' as ''月份'',count(1) as ''单数'',SUM(amount) as ''金额'' FROM [szjdw].[dbo].[mf_order] where cop_id=''DGJDW'' and createdt>'''+@start+''' and createdt<'''+@end+''''
select @sql
--exec(@sql)
set @mouth=@mouth+1
end
go
--declare @start datetime
--declare @end datetime
declare @start nvarchar(20)
declare @end nvarchar(20)
declare @str nvarchar(3000)
declare @sql nvarchar(3000)
set @mouth=1
while @mouth<=12
begin
if @mouth=12
begin
set @start='2011-'+STR(@mouth)+'-1'
--set @start=cast(@str as datetime)
set @end='2012-'+STR(@mouth)+'-1'
--set @end=cast(@str as datetime)
end
else
begin
set @start='2011-'+ltrim(rtrim(STR(@mouth)))+'-1'
--set @start=cast(@str as datetime)
set @end='2011-'+ltrim(rtrim(STR(@mouth+1)))+'-1'
--set @end=cast(@str as datetime)
end
set @sql=N'select '+ltrim(rtrim(cast(@mouth as CHAR)))+' as ''月份'',count(1) as ''单数'',SUM(amount) as ''金额'' FROM [szjdw].[dbo].[mf_order] where cop_id=''DGJDW'' and createdt>'''+@start+''' and createdt<'''+@end+''''
select @sql
--exec(@sql)
set @mouth=@mouth+1
end
go
相关文章推荐
- Java的日期类的时间从为什么是从1970年1月1日开始?
- 楼主,不知道为什么这么流行
- 为什么我的datagridview中显示的日期总把时间也显示出来了,请问怎样才能让它不显示呢?
- 日期类的时间为什么是从1970年1月1日开始的
- MSSQL--日期时间与字符串转换表
- 真不知道自己为什么会这么开心
- [MSSQL]求某段时间内某一星期日期的天数
- mysql+mssql+oracle的时间日期类型
- MySQL与MsSQL 对日期时间操作的函数
- Windows Live Writer发布的博客时间是乱的,不知道为什么
- [MSSQL]生成两个时间之间的所有日期
- [MSSQL]生成两个时间之间的所有日期
- mssql日期和时间函数
- [MSSQL]求某段时间内某一星期日期的天数
- MSSQL 2008中新的时间日期数据类型
- 日期类的时间从为什么是从1970年1月1日(格林威治时间)
- ZOJ1586 恩 最小生成树 也不知道怎么 自己的 时间受限 后来终于搞对了 也知道时间受限为什么了 你不停止 当然时间受限啊!!
- mssql 计算 时间 日期 相差 天数 时间
- mysql+mssql+oracle的时间日期类型
- 日期类的时间从为什么是从1970年1月1日