一个简单问题(50分)

  • 主题发起人 主题发起人 ll710915
  • 开始时间 开始时间
L

ll710915

Unregistered / Unconfirmed
GUEST, unregistred user!
在SQL SERVER中,想对日期格式只输入年,或只输入年月,不输入日,也就是不需要那么精确,后面的日不要,该如何做?测试过就给分
 
不是很明白你的意思。如果你是想条件的时候不要日,可以使用这样的函数
year(字段名字),month(字段名称).
 
只有靠自己实现,用字符串吧,我也碰到同样问题,或者默认1月1日0时0分
 
不是很明白楼主的意思啊。
请说详细一点撒。。
 
日期格式不是年-月-日吗?
我只想输入年-月就可以了
不需要精确到日
我不想用字符类型
只想用日期型
 
那就用FormatDateTime()控制。把日。去掉就是了。
 
在SQL中可以直接使用下面的语句获取
select convert(nvarchar(7), getdate(),102) --返回2006.11
select convert(nvarchar(6), getdate(),112) --返回200611
 
ChrisMao 的方法就可以啊
 
select cat(char(7),char(102)
 
DECLARE @myDate CHAR(8) --定义一个字符变量
DECLARE @myDate2 DATETIME --定义他、一个日期类型变量
SELECT @myDate = '20060101' --给字符变量赋值,这个时间可以自己组装,不想写月日就设成0101
SELECT @myDate2 = CONVERT(DATETIME, @myDate) --把字符日期转换成日期类型的变量,这个变量可直接插入数据库。
PRINT @myDate2
PRINT CONVERT(CHAR(6), @myDate2, 112) --打印出只有年月的日期

打印出的结果如下:
01 1 2006 12:00AM
200601

(本语句经过SQL2000的查询分析器测试)
 
后退
顶部