www.ctrt.net > SELECT * FROM AT whErE CONVERT(vArChAr,DAtETimE...

SELECT * FROM AT whErE CONVERT(vArChAr,DAtETimE...

首先明确一条,楼上的同学的作法是可以的。 然后说正事。 楼主的sql写的不好,不建议这样写,因为使用CONVERT将日期列转换为字符串后再匹配的话,会导致数据库索引失效(如果有的话),进而导致全表扫描。并且由于“2011-”这样的字符串依赖于操作...

你长日期的格式没有更改吧,长日期格式也要改成和短日期一样的才可以!

使用convert函数,参数格式 CONVERT(VARCHAR(10),GETDATE(),110) 第二个参数为字段名称,最后一个参数为指定转换格式 例: SELECT CONVERT(VARCHAR(10),GETDATE(),110) 检索结果为:11-10-2015

这是一个convert函数 函数的括号里包括三个参数 参数1:值类型 ---- varchar(10) 参数2:值内容 ---- getdate() 参数3:值格式 ---- 120 格式120 对应的样式是 2009-05-15 13:32:53 这句话的完整意思 就是把当前时间 转换成上面的格式样式

使用convert函数,参数格式 CONVERT(VARCHAR(10),GETDATE(),110) 第二个参数为字段名称,最后一个参数为指定转换格式 例: SELECT CONVERT(VARCHAR(10),GETDATE(),110) 检索结果为:11-10-2015

用convert函数即可。 一般有以下几种转换方式,可根据实际需要选用: select Convert(varchar(10),getdate(),120) 2006-05-12 select CONVERT(varchar, getdate(), 120 ) 2006-05-12 11:06:08 select replace(replace(replace(CONVERT(varchar, ...

比如:SELECT CONVERT(varchar(7),'1989-01-01 00:00') 那么返回的值就是1989-01了 你在写SQL语句的可以参照如下模型: SELECT CONVERT(VARCHAR(7),字段名) AS 日期 FROM 表 PS:VARCHAR(7)代表长度为7,因为XXXX-XX的长度为7

直接转没有这种格式 可以这样 select replace(convert(varchar(16),getdate(),120),'-','') -------------------- 20120813 10:49 (1 row(s) affected)

去掉 ,120 把 vpdn_time 转化成 varchar(10)类型

因为你的输出类型是DATATIME,可是你已经转成varchar类型,当然类型不匹配

网站地图

All rights reserved Powered by www.ctrt.net

copyright ©right 2010-2021。
www.ctrt.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com