var now=DateTimeNow;
//本月第一天
var firstDayInMonth=new DateTime(nowYear, nowMonth, 1);
//本月最后一天,考虑跨年和奇偶月,所以用本月第一天加一个月再减一天
var lastDayInMonth=firstDayInMonthAddMonths(1)AddDays(-1);
var dayOfWeek=0;
switch (nowDayOfWeekToString()ToLower())
{
case "monday":
dayOfWeek = 1; break;
case "tuesday":
dayOfWeek = 2; break;
case "wednesday":
dayOfWeek = 3; break;
case "thursday":
dayOfWeek = 4; break;
case "friday":
dayOfWeek = 5; break;
case "saturday":
dayOfWeek = 6; break;
case "sunday":
dayOfWeek = 7; break;
}
//星期一
var mon=nowAddDays(1 - dayOfWeek);
//星期六
var sat=nowAddDays(6 - dayOfWeek);
工具/材料:Management Studio。
1、首先在桌面上,点击“Management Studio”图标。
2、之后在该界面中,点击左上角“新建查询”选项。
3、接着在该界面中,输入昨天,今天,明天和本周的记录的sql语句“select from test2 where time = DATEADD( day,-1, convert(varchar(10),getdate(),120) ); select from test2 where time= DATEADD( day,0, convert(varchar(10),getdate(),120) ); select from test2 where time> DATEADD( day,-6, convert(varchar(10),getdate(),120) );”。
4、然后在该界面中,点击左上方“执行”按钮。
5、最后在该界面中,显示昨天,今天,明天和本周的记录成功。
本周select from 表 where datediff('w',日期字段,now())=0
本月select from 表 where datediff('m',日期字段,now())=0
本季select from 表 datediff('q',日期字段,now())=0
DateAdd 函数
描述:返回已添加指定时间间隔的日期。
语法:DateAdd(interval, number, date)
interval: 必选。字符串表达式,表示要添加的时间间隔。有关数值,请参阅“设置”部分。
number: 必选。数值表达式,表示要添加的时间间隔的个数。数值表达式可以是正数(得到未来的日期)或负数(得到过去的日期)。
date: 必选。Variant 或要添加 interval 的表示日期的文字。
interval 参数可以有以下值:
yyyy (年) 、q (季度) 、m (月) 、y (一年的日数) 、d (日) 、w (一周的日数) 、ww (周) 、h (小时) 、n (分钟) 、s (秒)
说明:可用 DateAdd 函数从日期中添加或减去指定时间间隔。例如可以使用 DateAdd 从当天算起 30 天以后的日期或从现在算起 45 分钟以后的时间。要向 date 添加以“日”为单位的时间间隔,可以使用“一年的日数”(“y”)、“日”(“d”)或“一周的日数”(“w”)。
DateAdd 函数不会返回无效日期。如下示例将 95 年 1 月 31 日加上一个月:
NewDate = DateAdd("m", 1, "31-Jan-95")
在这个例子中,DateAdd 返回 95 年 2 月 28 日,而不是 95 年 2 月 31 日。如果 date 为 96 年 1 月 31 日,则返回 96 年 2 月 29 日,这是因为 1996 是闰年。
如果计算的日期是在公元 100 年之前则会产生错误。
如果 number 不是 Long 型值,则在计算前四舍五入为最接近的整数。
DateDiff 函数
描述:返回两个日期之间的时间间隔。
语法:DateDiff(interval, date1, date2 [,firstdayofweek[, firstweekofyear>)
interval: 必选。字符串表达式,表示用于计算 date1 和 date2 之间的时间间隔。有关数值,请参阅“设置”部分。
date1, date2: 必选。日期表达式。用于计算的两个日期。
firstdayofweek: 可选。指定星期中第一天的常数。如果没有指定,则默认为星期日。有关数值,请参阅“设置”部分。
firstweekofyear: 可选。指定一年中第一周的常数。如果没有指定,则默认为 1 月 1 日所在的星期。有关数值,请参阅“设置”部分。
interval 参数可以有以下值:
yyyy (年) 、q (季度) 、m (月) 、y (一年的日数) 、d (日) 、w (一周的日数) 、ww (周) 、h (小时) 、n (分钟) 、s (秒)
firstdayofweek 参数可以有以下值:
(以下分别为:常数 值 描述)
vbUseSystem 0 使用区域语言支持 (NLS) API 设置。
vbSunday 1 星期日(默认)
vbMonday 2 星期一
vbTuesday 3 星期二
vbWednesday 4 星期三
vbThursday 5 星期四
vbFriday 6 星期五
vbSaturday 7 星期六
firstweekofyear 参数可以有以下值:
(以下分别为:常数 值 描述)
vbUseSystem 0 使用区域语言支持 (NLS) API 设置。
vbFirstJan1 1 由 1 月 1 日所在的星期开始(默认)。
vbFirstFourDays 2 由在新年中至少有四天的第一周开始。
vbFirstFullWeek 3 由在新的一年中第一个完整的周开始。
说明:DateDiff 函数用于判断在两个日期之间存在的指定时间间隔的数目。例如可以使用 DateDiff 计算两个日期相差的天数,或者当天到当年最后一天之间的星期数。
要计算 date1 和 date2 相差的天数,可以使用“一年的日数”(“y”)或“日”(“d”)。当 interval 为“一周的日数”(“w”)时,DateDiff 返回两个日期之间的星期数。如果 date1 是星期一,则 DateDiff 计算到 date2 之前星期一的数目。此结果包含 date2 而不包含 date1。如果 interval 是“周”(“ww”),则 DateDiff 函数返回日历表中两个日期之间的星期数。函数计算 date1 和 date2 之间星期日的数目。如果 date2 是星期日,DateDiff 将计算 date2,但即使 date1 是星期日,也不会计算 date1。
如果 date1 晚于 date2,则 DateDiff 函数返回负数。
firstdayofweek 参数会对使用“w”和“ww”间隔符号的计算产生影响。
如果 date1 或 date2 是日期文字,则指定的年度会成为日期的固定部分。但是如果 date1 或 date2 被包括在引号 (" ") 中并且省略年份,则在代码中每次计算 date1 或 date2 表达式时,将插入当前年份。这样就可以编写适用于不同年份的程序代码。
在 interval 为“年”(“yyyy”)时,比较 12 月 31 日和来年的 1 月 1 日,虽然实际上只相差一天,DateDiff 返回 1 表示相差一个年份。
DatePart 函数
描述:返回给定日期的指定部分。
语法:DatePart(interval, date[, firstdayofweek[, firstweekofyear>)
DatePart: 函数的语法有以下参数:
interval: 必选。字符串表达式,表示要返回的时间间隔。有关数值,请参阅“设置”部分。
date: 必选。要计算的日期表达式。
firstdayof week: 可选。指定星期中的第一天的常数。如果没有指定,则默认为星期日。有关数值,请参阅“设置”部分。
firstweekofyear: 可选。指定一年中第一周的常数。如果没有指定,则默认为 1 月 1 日所在的星期。有关数值,请参阅“设置”部分。
interval 参数可以有以下值:
yyyy (年) 、q (季度) 、m (月) 、y (一年的日数) 、d (日) 、w (一周的日数) 、ww (周) 、h (小时) 、n (分钟) 、s (秒)
firstdayofweek 参数可以有以下值:
(以下分别为:常数 值 描述)
vbUseSystem 0 使用区域语言支持 (NLS) API 设置。
vbSunday 1 星期日(默认)
vbMonday 2 星期一
vbTuesday 3 星期二
vbWednesday 4 星期三
vbThursday 5 星期四
vbFriday 6 星期五
vbSaturday 7 星期六
firstweekofyear 参数可以有以下值:
(以下分别为:常数 值 描述)
vbUseSystem 0 使用区域语言支持 (NLS) API 设置。
vbFirstJan1 1 由 1 月 1 日所在的星期开始(默认)。
vbFirstFourDays 2 由在新年中至少有四天的第一周开始。
vbFirstFullWeek 3 由在新的一年中第一个完整的周(不跨年度)开始。
说明:DatePart 函数用于计算日期并返回指定的时间间隔。例如使用 DatePart 计算某一天是星期几或当前的时间。
firstdayofweek 参数会影响使用“w”和“ww”间隔符号的计算。
如果 date 是日期文字,则指定的年度会成为日期的固定部分。但是如果 date 被包含在引号 (" ") 中,并且省略年份,则在代码中每次计算 date 表达式时,将插入当前年份。这样就可以编写适用于不同年份的程序代码。
DateSerial 函数
描述:对于指定的年、月、日,返回 Date 子类型的 Variant。
语法:DateSerial(year, month, day)
year: 从 100 到 9999 之间的数字或数值表达式。
month: 任意数值表达式。
day: 任意数值表达式。
说明:要指定日期,如 1991 年 12 月 31 日,DateSerial 函数中每个参数的取值范围都应该是可接受的;即日的取值应在 1 和 31 之间,月的取值应在 1 和 12 之间。但是,也可以使用表示某日之前或之后的年、月、日数目的数值表达式为每个参数指定相对日期。
以下样例中使用了数值表达式代替绝对日期。在这里,DateSerial 函数返回 1990 年 8 月 1 日之前十年 (1990 - 10) 零两个月 (8 - 2) 又一天 (1 - 1) 的日期:即 1980 年 5 月 31 日。
DateSerial(1990 - 10, 8 - 2, 1 - 1)
对于 year 参数,若取值范围是从 0 到 99,则被解释为 1900 到 1999 年。对于此范围之外的 year 参数,则使用四位数字表示年份(例如 1800 年)。
当任何一个参数的取值超出可接受的范围时,则会适当地进位到下一个较大的时间单位。例如,如果指定了 35 天,则这个天数被解释成一个月加上多出来的日数,多出来的日数取决于其年份和月份。但是如果参数值超出 -32,768 到 32,767 的范围,或者由三个参数指定(无论是直接还是通过表达式指定)的日期超出了可以接受的日期范围,就会发生错误。
DateValue 函数
描述:返回 Date 子类型的 Variant。
语法:DateValue(date)
date 参数应是字符串表达式,表示从 100 年 1 月 1 日到 9999 年 12 月 31 日中的一个日期。但是,date 也可以是表示上述范围内的日期、时间或日期时间混合的任意表达式。
说明:如果 date 参数包含时间信息,则 DateValue 不会返回时间信息。但是如果 date 包含无效的时间信息(如 "89:98"),就会出现错误。
如果 date 是某一字符串,其中仅包含由有效的日期分隔符分隔开的数字,则 DateValue 将会根据为系统指定的短日期格式识别月、日和年的顺序。DateValue 还会识别包含月份名称(无论是全名还是缩写)的明确日期。例如,除了能够识别 12/30/1991 和 12/30/91 之外,DateValue 还能识别 December 30, 1991 和 Dec 30, 1991。
如果省略了 date 的年份部分,DateValue 将使用计算机系统日期中的当前年份。
Day 函数
描述:返回 1 到 31 之间的一个整数(包括 1 和31),代表某月中的一天。
语法:Day(date)
date 参数是任意可以代表日期的表达式。如果 date 参数中包含 Null,则返回 Null。
这里的“某一周”是有歧义的:
一种可能是某日期所在的周
第二种是某年的第几周。这还有歧义。因为某年的第一周,可能开始于上一年,同时这一周也是上一年的最后一周,会重复计算。我们这里假设“不管是否重复计算”
第三种是每周从星期几开始。我们这里假设“从星期一开始”。
下面分别是输出“某日期所在的周始终日期”、“某年某周始终日期”、“某年各周始终日期”的代码!
如果每周从星期日开始,将vbMonday替换为vbSunday即可。
'某日期所在的周始终日期
Private Sub Command3_Click()
Dim dt As Date
Dim wd As Integer
dt = InputBox("请输入一个日期(Date格式):", "输入日期", Date)
wd = Weekday(dt, vbMonday) '某日是星期几,周一为第一天
firstDay = DateAdd("d", -wd + 1, dt) '本周的开始日期
endDay = DateAdd("d", 7 - wd, dt) '本周的开始日期
Text1Text = "当前日期所在的周起止日期:"
Text1Text = Text1Text & vbNewLine
Text1Text = Text1Text & vbNewLine & "每周从星期一开始"
Text1Text = Text1Text & vbNewLine & firstDay & vbTab & endDay
wd = Weekday(dt, vbSunday) '某日是星期几,周日为第一天
firstDay = DateAdd("d", -wd + 1, dt) '本周的开始日期
endDay = DateAdd("d", 7 - wd, dt) '本周的开始日期
Text1Text = Text1Text & vbNewLine
Text1Text = Text1Text & vbNewLine & "每周从星期日开始"
Text1Text = Text1Text & vbNewLine & firstDay & vbTab & endDay
End Sub
'某年某周始终日期
Private Sub Command4_Click()
Dim y As Integer
Dim w As Integer
Dim dt As Date
Dim wd As Integer
y = InputBox("请输入年份:", "输入年份", Year(Date))
dt = DateSerial(y, 1, 1)
w = InputBox("请输入周数:", "第几周", "")
dt = DateAdd("ww", (w - 1), dt)
wd = Weekday(dt, vbMonday) '某日是星期几,周一为第一天
firstDay = DateAdd("d", -wd + 1, dt) '本周的开始日期
endDay = DateAdd("d", 7 - wd, dt) '本周的开始日期
Text1Text = "当前日期所在的周起止日期:"
Text1Text = Text1Text & vbNewLine
Text1Text = Text1Text & vbNewLine & "每周从星期一开始"
Text1Text = Text1Text & vbNewLine & firstDay & vbTab & endDay
End Sub
'某年各周始终日期
Private Sub Command2_Click()
Dim y As Integer
Dim w As Integer
Dim dt As Date
Dim dte As Date
Dim wd As Integer
y = InputBox("请输入年份:", "输入年份", Year(Date))
dt = DateSerial(y, 1, 1)
dte = DateAdd("yyyy", 1, dt) - 1 '某年最后一天
wd = Weekday(dt, vbMonday) '某日是星期几,周一为第一天
firstDay = DateAdd("d", -wd + 1, dt) '本周的开始日期
endDay = firstDay + 6 '本周的开始日期
Text1Text = "当前日期所在的周起止日期:"
Text1Text = Text1Text & vbNewLine & "(每周从星期一开始)"
Text1Text = Text1Text & vbNewLine
Text1Text = Text1Text & vbNewLine & firstDay & vbTab & endDay
Do While endDay < dte
w = w + 1
firstDay = firstDay + 7
endDay = firstDay + 6
Text1Text = Text1Text & vbNewLine & firstDay & vbTab & endDay
Loop
End Sub
--DateTime 数字型
SystemDateTime currentTime=new SystemDateTime();
取当前年月日时分秒 currentTime=SystemDateTimeNow;
取当前年 int 年=currentTimeYear;
取当前月 int 月=currentTimeMonth;
取当前日 int 日=currentTimeDay;
取当前时 int 时=currentTimeHour;
取当前分 int 分=currentTimeMinute;
取当前秒 int 秒=currentTimeSecond;
取当前毫秒 int 毫秒=currentTimeMillisecond; (变量可用中文)
取中文日期显示——年月日时分 string strY=currentTimeToString("f"); //不显示秒
取中文日期显示_年月 string strYM=currentTimeToString("y");
取中文日期显示_月日 string strMD=currentTimeToString("m");
取当前年月日,格式为:2003-9-23 string strYMD=currentTimeToString("d");
取当前时分,格式为:14:24 string strT=currentTimeToString("t");
DateTimeNowToString();//获取当前系统时间 完整的日期和时间
DateTimeNowToLongDateString();//只显示日期 xxxx年xx月xx日 ,一个是长日期
DateTimeNowToShortDateString();//只显示日期 xxxx-xx-xx 一个是短日期
//今天 DateTimeNowDateToShortDateString();
//昨天 的 DateTimeNowAddDays(-1)ToShortDateString();
//明天 的 DateTimeNowAddDays(1)ToShortDateString();
//本周(注意这里的每一周是从周日始至周六止)
DateTimeNowAddDays(ConvertToDouble((0 - ConvertToInt16(DateTimeNowDayOfWeek))))ToShortDateString();
DateTimeNowAddDays(ConvertToDouble((6 - ConvertToInt16(DateTimeNowDayOfWeek))))ToShortDateString();
//上周,上周就是本周再减去7天
DateTimeNowAddDays(ConvertToDouble((0 - ConvertToInt16(DateTimeNowDayOfWeek))) - 7)ToShortDateString();
DateTimeNowAddDays(ConvertToDouble((6 - ConvertToInt16(DateTimeNowDayOfWeek))) - 7)ToShortDateString();
//下周 本周再加上7天
DateTimeNowAddDays(ConvertToDouble((0 - ConvertToInt16(DateTimeNowDayOfWeek))) + 7)ToShortDateString();
DateTimeNowAddDays(ConvertToDouble((6 - ConvertToInt16(DateTimeNowDayOfWeek))) + 7)ToShortDateString();
//本月 本月的第一天是1号,最后一天就是下个月一号再减一天。
DateTimeNowYearToString() + DateTimeNowMonthToString() + "1"; //第一天
DateTimeParse(DateTimeNowYearToString() + DateTimeNowMonthToString() + "1")AddMonths(1)AddDays(-1)ToShortDateString();//最后一天
另一种方法:
DateTime now = DateTimeNow;
DateTime d1 = new DateTime(nowYear, nowMonth, 1); //本月第一天
DateTime d2 = d1AddMonths(1)AddDays(-1); //本月最后一天
PS:
DateTimeNowDayOfWeekToString();//英文星期显示,Wednesday
(int)DateTimeNowDayOfWeek 数字,若是周三,结果对应为3
DateTimeNowToString("dddd", new SystemGlobalizationCultureInfo("zh-cn")); //中文星期显示
DateTimeNowToString("dddd");//中文星期显示
DateTimeNowToString("dddd,MMMM,dd ,yyyy", new SystemGlobalizationDateTimeFormatInfo());//显示日期格式Friday,July, 01,2009
DateTimeNowToString("dddd,dd MMMM,yyyy") //输出 星期三,30 一月,2008
出处:>
以上就是关于asp.net取得这个月的第一天和最后一天的日期怎么取得本周一和本周六的日期怎么取得全部的内容,包括:asp.net取得这个月的第一天和最后一天的日期怎么取得本周一和本周六的日期怎么取得、怎么用sql查询昨天,今天,明天和本周的记录、asp取access数据库里本周、本月、本季度的记录,select语句怎么写等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)