用SQL语句计算出给定日期是星期几?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用SQL语句计算出给定日期是星期几?相关的知识,希望对你有一定的参考价值。
方法越多越好
1、首先可以直接用datepart函数,第一个参数设置成weekday就可以了,如下图所示。
2、得到的结果是这一天是这周的第几天,注意星期日是第一天。
3、可以看到去掉星期日就是日期的星期几了,如下图所示。
4、然后在实际使用的时候就可以直接减去1就可以了,如下图所示。
5、另外datepart第二个参数也可以直接放getdate,如下图所示。
6、最后得到的结果也是我们需要的,如下图所示。
参考技术A1、创建测试表,
create table test_day(id number, v_date date);
2、插入测试数据
insert into test_day
select level, sysdate-level from dual connect by level < 8;
3、查询表中记录,select t.*, rowid from test_day t;
4、编写sql,查看表中每条记录日期对应的周几,
参考技术B 上面那位说那么多,就简单一句select DATEPART(WEEKDAY,GETDATE()+@@DATEFIRST-1) --判断当前是日期是星期几,像今天会返回4 select DATEPART(WEEKDAY,convert(datetime,'2012-04-29')+@@DATEFIRST-1) 上面这句就是指定日期的~ 参考技术C select datename(weekday,'2012-05-02')最简单的方法,没有之一 参考技术D 用datename函数就行了,datename(weekday, 日期)c语言编程题:输入一个日期,计算出该日期是星期几?
c语言编程题:输入一个日期,计算出该日期是星期几?
源代码如下:
/*
* author:X
* date:2021/9/17 18:49
* description:输入一个日期,计算出该日期是星期几?
*/
#include <stdio.h>
int leap(int year);
int main()
int year, month, day, i;
int m[12] = 31,28,31,30,31,30,31,31,30,31,30,31 ;
printf("请输入要判断的年月日(格式如:2021 9 17 年月日之间用空格隔开):");
while (~scanf("%d %d %d", &year, &month, &day))
if (day < 1 || month < 1 || month > 12 || year < 1 || year>10000|| day > m[month - 1])
printf("%d/%d/%d 是不正确的日期\\n", year, month, day);
return -1;
if (leap(year))
m[1] = 29;
else
m[1] = 28;
int sum = 0;
sum += day;
for (i = 1; i < month; i++)
sum += m[i - 1];
for (i = 1; i < year; i++)
sum += 365;
if (leap(i))
sum++;
int dx = sum % 7;
if (dx == 0)
printf("%d/%d/%d 是星期天\\n", year, month, day);
else if (dx == 1)
printf("%d/%d/%d 是星期一\\n", year, month, day);
else if (dx == 2)
printf("%d/%d/%d 是星期二\\n", year, month, day);
else if (dx == 3)
printf("%d/%d/%d 是星期三\\n", year, month, day);
else if (dx == 4)
printf("%d/%d/%d 是星期四\\n", year, month, day);
else if (dx == 5)
printf("%d/%d/%d 是星期五\\n", year, month, day);
else if (dx == 6)
printf("%d/%d/%d 是星期六\\n", year, month, day);
return 0;
int leap(int year) //判断是否为闰年
if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))
return 1;
return 0;
测试结果:
以上是关于用SQL语句计算出给定日期是星期几?的主要内容,如果未能解决你的问题,请参考以下文章