当前位置: 代码迷 >> Sql Server >> SQL 日期的查询解决方案
  详细解决方案

SQL 日期的查询解决方案

热度:45   发布时间:2016-04-27 14:23:17.0
SQL 日期的查询
我有个表A,里面有个列B。
列B的格式是Varchar(16),存放的是日期,日期格式都是 (YY-MM-DD),比如2011年11月11日,存的格式为(11-Nov-11)。

查询的传参值C的格式是(2011-11-31),就是(YYYY-MM-DD)。

我想对这列的时间范围进行查询,也就是 列B的日期要小于值C的结果。
请问写这个语句呢??

------解决方案--------------------
SQL code
set language us_englishselect convert(datetime,'11-Nov-11',120)set language 简体中文/*-----------------------2011-11-11 00:00:00.000(1 行受影响)*/
------解决方案--------------------
SQL code
set language us_englishselect * from tb where convert(datetime,'11-Nov-11',120)>'2011-11-30'set language 简体中文
------解决方案--------------------
正确的是这样的:
SQL code
表如下: CREATE TABLE [dbo].[Table1] (    [uid] [varchar] (5) COLLATE Chinese_PRC_CI_AS NULL ,    [udate] [varchar] (16) COLLATE Chinese_PRC_CI_AS NULL  )------------------数据如下:uid    udate1    11-Nov-112    12-Nov-113    30-Nov-114    01-Dec-115    05-Dec-11-------------------查询语句如下:select * from Table1where convert(datetime,udate,120)>'2011-11-30'-------------------查询结果如下:4    01-Dec-115    05-Dec-11
  相关解决方案