select * from tablename1 where day(tablename1.datetime1) between 1 and 20 and month(tablename1.datetime1)=month(tablename2.datetime2) select * from tablename1 where to_char(tablename1.datetime1,'dd') between '1' and '20' and to_char(tablename1.datetime1.'mm')=to_char(tablename2.datetime2,'mm')
where day(dodate) between 1 and 20
where day(tablename1.datetime1) between 1 and 20
and month(tablename1.datetime1)=month(tablename2.datetime2)
select * from tablename1
where to_char(tablename1.datetime1,'dd') between '1' and '20'
and to_char(tablename1.datetime1.'mm')=to_char(tablename2.datetime2,'mm')
if (nowtime >= Convert.ToDateTime(kw_enddate.Year + "-" + kw_enddate.Month + "-" + "1") && nowtime < Convert.ToDateTime(kw_enddate.Year + "-" + kw_enddate.Month + "-" + "21"))
“kw_enddate”是数据库里存的一个日期,在此省略取值的代码。
我问的是两种情况
1当前时间在本月的21日前
判断“在本月的21日前”可以直接用
nowtime.Day > 202当前时间是否在某个时间所对应的那个月的1号到20号之间
这个我用以下的代码,可能效率不高,请指正。
if (nowtime >= Convert.ToDateTime(kw_enddate.Year + "-" + kw_enddate.Month + "-" + "1")
&& nowtime < Convert.ToDateTime(kw_enddate.Year + "-" + kw_enddate.Month + "-" + "21"))
“nowtime”是当前时间。
“kw_enddate”是数据库里存的一个日期,在此省略取值的代码。
select * from tablename where day(datetime1) between 1 and 20 and month(datetime1)=@month
dt=DateTime.Now;
dt.year;//年
dt.month;//月
dt.date;//
dt.day;//
取当前时间的year和month和day
取指定时间的year和month
在两个时间的year和month相等情况下再比较当前时间的day是否在1-21的范围内