select AppTime, WorkTime from wapprain where substring(AppTime,1,10)= '2007-03-18'
AppTime WorkTime
-------------------- --------------------
2007-03-18 6:00 6:07
2007-03-18 6:24 6:36
2007-03-18 6:26 6:31
2007-03-18 6:43 6:44
2007-03-18 7:03 7:08
2007-03-18 7:11 7:17
2007-03-18 7:13 7:23
2007-03-18 7:39 7:42
2007-03-18 11:3 11:11
2007-03-18 11:28 11:47
2007-03-18 7:39 7:43
2007-03-18 7:56 8:07
2007-03-18 13:39 13:50
2007-03-18 8:09 8:16
2007-03-18 8:19 8:25
2007-03-18 8:36 8:40
2007-03-18 9:30 9:35
2007-03-18 9:44 9:51
2007-03-18 10:26 10:31
2007-03-18 14:22 14:30(所影响的行数为 20 行)
我想查 用AppTime的日期+WorkTime的时间 即2007-03-18 12:00到20:00之间的数据
我用这句错的,该怎么改!
select AppTime, WorkTime from wapprain where convert(datetime,substring(AppTime,1,10)+' '+WorkTime) between '2007-03-18 12:00:00' and '2007-03-18 20:00:00'
AppTime WorkTime
-------------------- --------------------
2007-03-18 6:00 6:07
2007-03-18 6:24 6:36
2007-03-18 6:26 6:31
2007-03-18 6:43 6:44
2007-03-18 7:03 7:08
2007-03-18 7:11 7:17
2007-03-18 7:13 7:23
2007-03-18 7:39 7:42
2007-03-18 11:3 11:11
2007-03-18 11:28 11:47
2007-03-18 7:39 7:43
2007-03-18 7:56 8:07
2007-03-18 13:39 13:50
2007-03-18 8:09 8:16
2007-03-18 8:19 8:25
2007-03-18 8:36 8:40
2007-03-18 9:30 9:35
2007-03-18 9:44 9:51
2007-03-18 10:26 10:31
2007-03-18 14:22 14:30(所影响的行数为 20 行)
我想查 用AppTime的日期+WorkTime的时间 即2007-03-18 12:00到20:00之间的数据
我用这句错的,该怎么改!
select AppTime, WorkTime from wapprain where convert(datetime,substring(AppTime,1,10)+' '+WorkTime) between '2007-03-18 12:00:00' and '2007-03-18 20:00:00'
Select Convert(DateTime, Substring('2007-03-18 14:22', 1, 10) + ' ' + '14:30')
--Result
/*
2007-03-18 14:30:00.000
2007-03-18 14:30:00.000
*/
试试这个select * from wapprain
where dateadd(minute,cast(left(worktime,charindex(':',worktime)-1) as int)*60+cast(substring(worktime,charindex(':',worktime)+1,2) as int),apptime) between '2007-03-18 12:00:00' and '2007-03-18 20:00:00'
我用这句还是出现:从字符串转换为 datetime 时发生语法错误。select * from wapprain
where dateadd(minute,cast(left(worktime,charindex(':',worktime)-1) as int)*60+cast(substring(worktime,charindex(':',worktime)+1,2) as int),apptime) between '2007-03-18 12:00:00' and '2007-03-18 20:00:00'
向 substring 函数传递了无效的 length 参数。