读书人

一个简单的sql语句拼接有关问题

发布时间: 2013-06-25 23:45:42 作者: rapoo

一个简单的sql语句拼接问题
sql 2005 环境


declare @sql varchar(1000)
declare @startHH int
declare @endHH int
set @startHH = 1
set @endHH = 2
set @sql = ''
print @startHH
print @endHH
Select @sql = @sql + ' and datepart(hh, ATable.insertTime) between '+''''+ @startHH + '''' + ' and ' +''''+ @endHH + ''''



执行报错,从varchar转换成int时失败,怎么修改?
哎,每次遇到拼接字符串和变量就会出错,郁闷 SQL 字符串拼接
[解决办法]
Select @sql = @sql + ' and datepart(hh, ATable.insertTime) between '+''''+ convert(nvarchar(20),@startHH) + '''' + ' and ' +''''+ convert(nvarchar(20),@endHH) + ''''



[解决办法]
declare @sql varchar(1000)
declare @startHH int
declare @endHH int
set @startHH = 1
set @endHH = 2
set @sql = ''
print @startHH
print @endHH
Select @sql = @sql + ' and datepart(hh, ATable.insertTime) between '+''''
+ str(@startHH) + '''' + ' and '
+''''+ str(@endHH) + ''''

读书人网 >SQL Server

热点推荐