我存的时间 是varchar型,内容是“12:30”、“13:40”这类的数据,请问,要怎么比较大于12:30的时间呢?
这个是varchar型哦,要当成时间来比。
最好给出具体的代码,谢谢了!
这个是varchar型哦,要当成时间来比。
最好给出具体的代码,谢谢了!
解决方案 »
- 差异备份问题
- SQL 2000 加载附加数据库时遇到问题。。。
- 求段Sql
- VS2008连接SQL2005时无法登陆
- 为 爱莫能助的问题 -------- 散分
- 一个字符串包含两部分内容,是用一个"-"来隔开的,比如"100元-987元",我如何拆分成两个字符串呀.即:"100元"和 "987元"
- 我用查询语句在表中查不到记录。好像隐藏了一样。怎么回事啊。知道的大侠帮帮忙。谢谢先。
- 该如何写呢?紧急...
- 有关临时表的问题:我在sql server的storedproc中创建一临时表,可在asp中却找不到!
- MSSql中如何保存柬埔寨语言(ាសថាថថាដថ)
- 一个查询的问题 希望有高手解答一下
- sql嵌套查询求救
select '01:20'
union all
select '10:11'
union all
select '10:18'
union all
select '12:11'
union all
select '11:07'
union all
select '23:11'select * from #t where cast(('2009-11-05 '+tt) as datetime)>=cast('2009-11-05 12:00' as datetime)
datediff(hh,getdate(),cast(convert(varchar(10),getdate(),120)+' '+'12:30' as datetime))<0 then '大于12:30'
else '小于12:30' end/*----------
大于12:30(1 行受影响)*/
我是说我的数据是“12:30”,然后要查找,数据库中A列的数据在12:30之后的,但是A列是varchar型
select
case when
datediff(hh,a,cast(convert(varchar(10),getdate(),120)+' '+'12:30' as datetime))<0 then '大于12:30'
else '小于12:30' end
select
*
from
tb
where
datediff(hh,a,cast(convert(varchar(10),getdate(),120)+' '+'12:30' as datetime))<0
*
from
tb
where
datediff(ss,a,cast(convert(varchar(10),getdate(),120)+' '+'12:30' as datetime))<0
datediff里面的参数分别代表什么呢?
--写错了一点
select
*
from
tb
where
datediff(ss,a,cast(convert(varchar(10),a,120)+' '+'12:30' as datetime))<0
--ss代表秒
--a代表你的时间列
--后面的是a时间列那天的12:30
WHEN CONVERT(INT,REPLACE(A,':',''))>1230
INSERT INTO A(TIMES)
SELECT
'09:12' UNION ALL SELECT
'00:01' UNION ALL SELECT
'08:08' UNION ALL SELECT
'12:31' UNION ALL SELECT
'13:01';SELECT * FROM A WHERE TIMES>'12:30';SELECT * FROM A
WHERE CONVERT(INT,REPLACE(TIMES,':',''))>1230;--REPLACE函数是来凑热闹的!