sql 语句 如何在日期时间字段 只提取 日期
有一个日期时间字段(O_date)的值 为 2006-12-12 19:18:20
如何才能只 提取 日期 呢
就是只提取该字段的 日期 2006-12-12
select * from table where O_date? =2006-12-12
------解决方案--------------------select convert(varchar(10), getdate(), 20)
希望能够帮到你
------解决方案--------------------使用varchar或Substring函数
------解决方案--------------------如果是显示在DataGridView中,那么把DataGridView的DataFormatstring的属性值设置为{0:d}就可以了~
------解决方案--------------------你可以在提取后进行处理
DateTime dt=new DateTime();
dt = System.DateTime.Now;
Label1.Text = dt.ToString();
Label2.Text = dt.ToLongDateString();
第一个为2007-2-26 21:40:21
而第二个只显示日期部分~
刚刚测试通过
------解决方案--------------------在SQL中对字段用substring()就行了
------解决方案--------------------不要在用sql处理,在页面显示的时候进行处理就行了
------解决方案--------------------Label1.Text = DateTime.Parse(sdr[ "DateField "].ToString()).ToShortDateString();
或
在绑定时,GridView的显示日期那一列的DataFormatstring的属性值设置为{0:d},HtmlEncode的属性值设置为false也可以
------解决方案--------------------select * from table where CONVERT(varchar(4),YEAR(O_date))+ '- '+CONVERT(varchar(2),MONTH(O_date))+ '- '+CONVERT(varchar(2),DAY(O_date))= '2006-12-12 '
------解决方案--------------------用LEFT或Substring截取字符串.
------解决方案--------------------select * from table where datediff(dd, 你的日期字段, '2006-12-12 ') = 0
------解决方案--------------------select datename(year,getdate())+ '- '+datename(month,getdate())+ '- '+datename(day,getdate())
------解决方案--------------------取左边10个就可以了
------解决方案--------------------access
-------------------------------------
select format(字段名, "yyyy-MM-dd ") from 表名