sqlserver 日期比较
开始直接用下面的日期比较方法 select * from user_tabel where create_time>='2009-02-01‘ and create_time<='2009-02-10‘; 结果10号的数据未查到。 之后网上查了下,用了以下的日期比较方法 select * from user_tabel where CONVERT(varchar,giftlist_create_time_dt,23 )>='2010-02-01' and CONVERT(varchar,23 )<='2010-02-10'; ? MS SQL Server中的CONVERT日期格式化大全? CONVERT SQL Server 支持使用科威特算法的阿拉伯样式中的数据格式。 在表中,左侧的两列表示将?datetime?或?smalldatetime?转换为字符数据的?style?值。给?style?值加 100,可获得包括世纪数位的四位年份 (yyyy)。 | 不带世纪数位 (yy) | 带世纪数位 (yyyy) |
标准 |
输入/输出** |
-
0 或 100 (*)
默认值
mon dd yyyy hh:miAM(或 PM)
1
101
美国
mm/dd/yyyy
2
102
ANSI
yy.mm.dd
3
103
英国/法国
dd/mm/yy
4
104
德国
dd.mm.yy
5
105
意大利
dd-mm-yy
6
106
-
dd mon yy
7
107
-
mon dd,yy
8
108
-
hh:mm:ss
-
9 或 109 (*)
默认值 + 毫秒
mon dd yyyy hh:mi:ss:mmmAM(或 PM)
10
110
美国
mm-dd-yy
11
111
日本
yy/mm/dd
12
112
ISO
yymmdd
-
13 或 113 (*)
欧洲默认值 + 毫秒
dd mon yyyy hh:mm:ss:mmm(24h)
14
114
-
hh:mi:ss:mmm(24h)
-
20 或 120 (*)
ODBC 规范
yyyy?-mm-dd hh?:mm?:ss[.fff?]
-
21 或 121 (*)
ODBC 规范(带毫秒)
yyyy?-mm-dd hh?:mm?:ss[.fff?]
-
126(***)
ISO8601
yyyy-mm-dd Thh:mm:ss:mmm(不含空格)
-
130*
科威特
dd mon yyyy hh:mi:ss:mmmAM
-
131*
科威特
dd/mm/yy hh:mi:ss:mmmAM
值 | 输出 | 0?(默认值) 最大为 6 位数。根据需要使用科学记数法。 1 始终为 8 位值。始终使用科学记数法。 2 始终为 16 位值。始终使用科学记数法。值 | 输出 | 0?(默认值) 小数点左侧每三位数字之间不以逗号分隔,小数点右侧取两位数,例如 4235.98。 1 小数点左侧每三位数字之间以逗号分隔,小数点右侧取两位数,例如 3,510.92。 2 小数点左侧每三位数字之间不以逗号分隔,小数点右侧取四位数,例如 4235.9819。
---|