日期:2014-05-20  浏览次数:21103 次

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 表名