关于varchar类型转换成datetime类型的问题

[复制链接]
查看11 | 回复6 | 2011-3-25 02:42:20 | 显示全部楼层 |阅读模式
时间字段有一个与当前系统时间的判断条件,但是存储的数据类型在表中是字符串,请问在写where 是怎么直接将其转换,谢谢!!
回复

使用道具 举报

千问 | 2011-3-25 02:42:20 | 显示全部楼层
<pre id=\"best-answer-content\" class=\"reply-text mb10\">如果你用的是sql server 2008的话不用转换就能直接比较 sql server 2005 没试过不知道
转换的方法:
sql 中:
select convert (datetime,\'07/22/1986\')
select cast( \'07/22/1986\' as datetime)
Oracle 中
selectto_date(date_time_string,\'yyyy-MM-dd\') from table_name
你试试吧

















<h4 class=\"ask\">追问





<pre class=\"replyask-text\" id=\"content-2598035\">mysql 5.1
不好意思,没说清楚
回复

使用道具 举报

千问 | 2011-3-25 02:42:20 | 显示全部楼层
<pre class=\"replyask-text\" id=\"content-2598134\">你直接比较不行吗(我MySQL用的不多)
建议你改成datatime类型,不然以后你的麻烦会很多的
回复

使用道具 举报

千问 | 2011-3-25 02:42:20 | 显示全部楼层
<pre class=\"replyask-text\" id=\"content-2598276\">嗯,直接比较不行,系统时间是时间类型,数据时字符串,无法直接比较
log_date 里存的值: 20100603
回复

使用道具 举报

千问 | 2011-3-25 02:42:20 | 显示全部楼层
<pre class=\"replyask-text\" id=\"content-2598354\">你把存放日期的格式改成2010-06-03试试
回复

使用道具 举报

千问 | 2011-3-25 02:42:20 | 显示全部楼层
<pre class=\"replyask-text\" id=\"content-2598538\">那是不行的,当时他们建表的时候把log_date定义为varchar(50)....
回复

使用道具 举报

千问 | 2011-3-25 02:42:20 | 显示全部楼层
<pre class=\"replyask-text\" id=\"content-2598671\">varchar(50)还放不下2010-06-03 ?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行