C#根据一个时间判断属于哪个月份
答案:3 悬赏:70 手机版
解决时间 2021-03-23 21:48
- 提问者网友:嘚啵嘚啵
- 2021-03-23 05:17
C#根据一个时间判断属于哪个月份
最佳答案
- 五星知识达人网友:怙棘
- 2021-03-23 06:07
程序中判断用DateTime类来做比较好,只用年月来初始化一个DateTime对象,日固定使用1。然后用这个DateTime对象的AddMonths方法加一个月,再用AddDays方法减一天,就变成这个月的最后一天了。
DateTime dt = new DateTime(2012,5,1);
dt.AddMonths(1).AddDays(-1).ToString("yyyyMMdd");//这个就是当前的月的最后一天了。
如果是SQL的话,不需要知道最后一天我觉得也没事,就固定检索到31号,一个判断条件而已,即便没有31号也不影响检索结果的正确性。追问但是这个要必须指点一个时间,需要指点时间的话可以这么做:
DateTime.Now.AddMonths(-1).AddDays(1)
DateTime.Now.AddMonths(1).AddDays(-1)
这就可以表示判断属于当前月的了。
但是如果是判断一个不知道那个月的怎么判断,你上面给的也是判断一个具体的一个月,判断的是5月份的。求解啊大哥
DateTime dt = new DateTime(2012,5,1);
dt.AddMonths(1).AddDays(-1).ToString("yyyyMMdd");//这个就是当前的月的最后一天了。
如果是SQL的话,不需要知道最后一天我觉得也没事,就固定检索到31号,一个判断条件而已,即便没有31号也不影响检索结果的正确性。追问但是这个要必须指点一个时间,需要指点时间的话可以这么做:
DateTime.Now.AddMonths(-1).AddDays(1)
DateTime.Now.AddMonths(1).AddDays(-1)
这就可以表示判断属于当前月的了。
但是如果是判断一个不知道那个月的怎么判断,你上面给的也是判断一个具体的一个月,判断的是5月份的。求解啊大哥
全部回答
- 1楼网友:你可爱的野爹
- 2021-03-23 08:09
在c#中
Label1.Text = DateTime.Now.Year.ToString();
Label2.Text = DateTime.Now.Month.ToString();
Label3.Text = DateTime.Now.Day.ToString();
在SQL中
SELECt DATEPART(month, GETDATE())
SELECT DATEPART(year, GETDATE())
SELECT DATEPART(day, GETDATE())
全部测试过。
Select * From 表
Where month(日期)=3 and year(日期)=2012
日期是一个字段,就是你在数据库里面保存日期那一列
在c#中,3和2012就是你要选择值,然后传入SQL中查询。
Label1.Text = DateTime.Now.Year.ToString();
Label2.Text = DateTime.Now.Month.ToString();
Label3.Text = DateTime.Now.Day.ToString();
在SQL中
SELECt DATEPART(month, GETDATE())
SELECT DATEPART(year, GETDATE())
SELECT DATEPART(day, GETDATE())
全部测试过。
Select * From 表
Where month(日期)=3 and year(日期)=2012
日期是一个字段,就是你在数据库里面保存日期那一列
在c#中,3和2012就是你要选择值,然后传入SQL中查询。
- 2楼网友:未来江山和你
- 2021-03-23 07:05
select * from mytable where opDate between @StartDate and @EndDate
@StartDate =dateadd(ms,0,this.TextBox_StartDate.Text)//效果如:2012.5.1 00:00:00.000
@EndDate=dateadd(ms,-3,dateadd(day,1,this.TextBox_EndDate.Text))//效果如:2012.5.31 23:59.59.997
@StartDate =dateadd(ms,0,this.TextBox_StartDate.Text)//效果如:2012.5.1 00:00:00.000
@EndDate=dateadd(ms,-3,dateadd(day,1,this.TextBox_EndDate.Text))//效果如:2012.5.31 23:59.59.997
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯