首页 > 数据库 >010 数据库学习笔记 日期 + 时间 + 星期

010 数据库学习笔记 日期 + 时间 + 星期

时间:2023-06-09 10:25:09浏览次数:44  
标签:DATEPART DATEFIRST -- 数据库 笔记 010 WEEKDAY dd GETDATE

星期获取操作

--设置语言,这个很重要,会导致不同的返回结果 (只需设置一次语言后,就可以重复调用 DATENAME)
 SET LANGUAGE N'Simplified Chinese' --简体中文
 --SET LANGUAGE N'English' --英文
 --SET LANGUAGE N'Korean'--韩文

--获取指定日期为星期几 GETDATE()当天日期,GETDATE()+1 下一天......
SELECT DATENAME(weekday,GETDATE())
--明天是周几
SELECT DATENAME(weekday,GETDATE()+2) --获取星期几
--昨天是周几
SELECT DATENAME(weekday,GETDATE()-1) 

方式二:

--设置语言,这个很重要,会导致不同的返回结果 (只需设置一次语言后,就可以重复调用 DATENAME)
SET LANGUAGE N'Simplified Chinese' --简体中文
--SET LANGUAGE N'English' --英文
--SET LANGUAGE N'Korean'--韩文

--返回一周的第几天,星期天对应 1 
select DATEPART(weekday,GETDATE()+2)

--返回星期几 
SELECT DATENAME(weekday,GETDATE())


--来个示例
declare
@week varchar(10),@weekname varchar(10)
--1.获取星期几参数一
--set @week=@@DATEFIRST 
--2.获取星期参数二
set @week=DATEPART(weekday,GETDATE()+2)
set @weekname=DATENAME(weekday,GETDATE()+2)

select @weekname as weekname,@week as weekno,
case @week 
when 1 then '星期日'
when 2 then '星期一'
when 3 then '星期二'
when 4 then '星期三'
when 5 then '星期四'
when 6 then '星期五'
when 7 then '星期六'
end as week2

获取本周、上周--对应日期及星期

-- sql server 获取上周几和本周几
-- @@DATEFIRST 每周以周几开始,周一是 1 ,周日是 7 ,有些机器默认是7,有些机器默认是1
SELECT @@DATEFIRST
-- 修改 @@DATEFIRST 的值
SET DATEFIRST 7
-- 查询当前每周是以周几开始,今天是一周的第几天
SELECT @@DATEFIRST as 'startday', DATEPART(dw,GETDATE()) as 'weekday'

-- 通过 WEEKDAY 和 @@DATEFIRST 联合计算,抹平 @@DATEFIRST 设置的差异

-- 上周
SELECT 
 CONVERT(DATE, DATEADD(dd, -DATEPART (WEEKDAY ,GETDATE() + @@DATEFIRST - 1) - 6, GETDATE()) ) as '上周一'
,CONVERT(DATE, DATEADD(dd, -DATEPART (WEEKDAY ,GETDATE() + @@DATEFIRST - 1) - 5, GETDATE()) ) as '上周二'
,CONVERT(DATE, DATEADD(dd, -DATEPART (WEEKDAY ,GETDATE() + @@DATEFIRST - 1) - 4, GETDATE()) ) as '上周三'
,CONVERT(DATE, DATEADD(dd, -DATEPART (WEEKDAY ,GETDATE() + @@DATEFIRST - 1) - 3, GETDATE()) ) as '上周四'
,CONVERT(DATE, DATEADD(dd, -DATEPART (WEEKDAY ,GETDATE() + @@DATEFIRST - 1) - 2, GETDATE()) ) as '上周五'
,CONVERT(DATE, DATEADD(dd, -DATEPART (WEEKDAY ,GETDATE() + @@DATEFIRST - 1) - 1, GETDATE()) ) as '上周六'
,CONVERT(DATE, DATEADD(dd, -DATEPART (WEEKDAY ,GETDATE() + @@DATEFIRST - 1) - 0, GETDATE()) ) as '上周日'

-- 本周
SELECT 
 CONVERT(DATE, DATEADD(dd, -DATEPART (WEEKDAY ,GETDATE() + @@DATEFIRST - 1) + 1, GETDATE()) ) as '本周一'
,CONVERT(DATE, DATEADD(dd, -DATEPART (WEEKDAY ,GETDATE() + @@DATEFIRST - 1) + 2, GETDATE()) ) as '本周二'
,CONVERT(DATE, DATEADD(dd, -DATEPART (WEEKDAY ,GETDATE() + @@DATEFIRST - 1) + 3, GETDATE()) ) as '本周三'
,CONVERT(DATE, DATEADD(dd, -DATEPART (WEEKDAY ,GETDATE() + @@DATEFIRST - 1) + 4, GETDATE()) ) as '本周四'
,CONVERT(DATE, DATEADD(dd, -DATEPART (WEEKDAY ,GETDATE() + @@DATEFIRST - 1) + 5, GETDATE()) ) as '本周五'
,CONVERT(DATE, DATEADD(dd, -DATEPART (WEEKDAY ,GETDATE() + @@DATEFIRST - 1) + 6, GETDATE()) ) as '本周六'
,CONVERT(DATE, DATEADD(dd, -DATEPART (WEEKDAY ,GETDATE() + @@DATEFIRST - 1) + 7, GETDATE()) ) as '本周日'

  

 

标签:DATEPART,DATEFIRST,--,数据库,笔记,010,WEEKDAY,dd,GETDATE
From: https://www.cnblogs.com/YYkun/p/17468397.html

相关文章

  • O2OA (翱途) 开发平台应用市场云笔记功能邀您来体验
    O2OA云笔记提供了一个给员工记录工作笔记,在线协同编辑文档,白板演示的工具,该功能可以将记录下来的文档信息件实时同步到云端,用户随时在多个设备上进行查看、编辑与分享,支持在“云”上做笔记、管理文档、编写脑图信息。这样可以帮助整体工作团队实现资料共享、协同编辑、在线实......
  • Mysql数据库与JDBC
    day01-MYSQL关系型数据库:主要是用来描述实体与实体之间的关系实体指实实在在存在的事物:学生和班级,员工和部门E-R关系图:实体-联系图(EntityRelationshipDiagram),包括:实体(方框)、属性(椭圆形)、关系(菱形)mysql:中小型企业,被sun收购,后sun被oracle收购oracle:,甲骨文公......
  • ASP.NET Core使用EF Core操作MySql数据库
    ASP.NETCore使用EFCore操作MySql数据库 ASP.NETCore操作MySql数据库,这样整套环境都可以布署在Linux上使用微软的Microsoft.EntityFrameworkCore(2.1.4)和MySql出的MySql.Data.EntityFrameworkCore(8.0.13) 软件版本Asp.netCore:2.1MySql:5.6 项目结构Snai.Mysql是Asp.......
  • 数据库表锁住怎么办
    --是否存在死锁Status:状态,active表示被死锁selectusername,lockwait,status,machine,programfromv$sessionwheresidin(selectsession_idfromv$locked_object);--查看死锁的语句selectsql_textfromv$sqlwherehash_valuein(selectsql_hash_valuefromv$session......
  • 数据库服务器
    su-oraclesqlplus/assysdba启动数据库startup停止数据库shutdownimmediate数据库监听su-oracle启动监听服务lsnrctlstart停止监听服务lsnrctlstop查看监听状态lsnrctlstatus  --切到Oracle账户;su-oracle--进入oracle控制台并以dba身份登录oracle数据......
  • 有什么Windows电脑上好用地记笔记软件
    当你每天的工作事项非常多时,就会有很多事情需要记住,面对繁琐复杂的各种事项,很多人的记忆力都是有限的,很容易就会忘记工作事项,这应该怎么办呢?其实随着工作量的增加,想要快速、准确的记住琐碎的工作信息,借助一款记笔记软件可以起到事半功倍的作用。一般大多数上班族使用的办公设备都......
  • 阅读笔记之《构建之法》五
    第十章典型用户和场景10.1典型用户和典型场景①怎样定义典型用户?我们首先要定义用户的角色。正如戏剧中有正面和反面的角色,软件系统中也有受欢迎的和不受欢迎的典型用户。受欢迎的典型用户——指那些按设计者的期望使用系统的用户,如“网站的购物者”不受欢迎的典型用户—......
  • dataset.py代码阅读笔记
    #dataset.pyimportloggingimportos#处理c语言类型和二进制的数据结构importstruct#regularexpressionmoduleimportreimporttimeimportnumpyasnp#这个模块pip的时候有问题,但是按照提示出现换了pip文件名就好使了,叫做scikit-image#skimage的文档,主要是一些图像读取,显......
  • demosaicnet-master的包代码阅读笔记
    init.py我在学init用法时候的笔记该文件里面都是导入模块,其中从dataset.py是导入所有模块,因为模糊导入的__all__没有定义。from.modulesimportBayerDemosaickfrom.modulesimportXTransDemosaickfrom.mosaicimportxtransfrom.mosaicimportbayerfrom.mosaicim......
  • 《人件》读书笔记
    概要:社会的复杂性远比技术上的挑战难处理得多,并且很多时候社会因素比技术因素更重要。而团队是一个非常重要的因素,如何管理团队,项目、改善工作环境,形成高效团队这是不可避免和忽略的。1、管理团队:一个项目的失败,可能是技术导致、也有可能是团队因素导致,也可能两者都有。在工作......