SELECT DATEPART(yyyy,dt) AS y,
DATEPART(mm,st) AS m,
DATEPART(dd,st) AS d
FROM table
假设table有一列dt,那么y是年,m是月,d是日VS2010中获取用户输入的月和日,看你怎么输入了,如果是用dtPicker的话,那么是dtPicker1.Value.Day和dtPicker1.Value.Month

解决方案 »

  1.   

    MSSQL相関日期函数
    1. 當前系統日期、時間 
    select getdate() 2. dateadd 在向指定日期加上一段時間的基礎上,返回新的 datetime 值:
    例如:向日期加上2天 
    select dateadd(day,2,'2013-10-15') --返回:2013-10-17 00:00:00.0003. datediff 返回跨兩個指定日期的日期和時間邊界數:
    select datediff(day,'2013-09-01','2013-09-18') --返回:174. datepart 返回代表指定日期的指定日期部分的整數: <--你要的
    SELECT DATEPART(month, '2013-10-15') --返回 105. datename 返回代表指定日期的指定日期部分的字符串:
    SELECT datename(weekday, '2013-10-15') --返回:星期五6. day(), month(),year() --可以與datepart對照一下:select 當前日期=convert(varchar(10),getdate(),120) 
    ,當前時間=convert(varchar(8),getdate(),114) select datename(dw,'2013-10-15') select 本年第多少周=datename(week,'2013-10-15')
    ,今天是周幾=datename(weekday,'2013-10-15')
     
      

  2.   

    Year Month  Day,函数
      

  3.   


    这个直接。说起来最近我也遇到个关于日期的问题。
    大致是这样的:
    在查询的时候需要用户输入日期作为条件,目前
    系统日期格式为:2013-11-25 11:11:11.129
    用户日期格式为:2013-11-25打是我用到了平时常用的Convert来转换系统日期。
    但是遇到一个性能问题,在大数据的时候性能极差,目前也没找到更合适的方法来转换系统日期来和用户输入的日期比较。