1.SQL 生成随机字符串作为流水号

SELECT CONVERT(varchar(100), GETDATE(), 112)
--年月日时分秒
SELECT 'JS'+replace(CONVERT(varchar(10), GETDATE(), 112),'-','')
+replace(CONVERT(varchar(10), GETDATE(), 108),':','')
--随机英文字符
select char(65+ceiling(rand()*25))+RIGHT(Char(65),30)
select CEILING(rand()*10)
--英文加数字 随机五位数字
select UPPER( CHAR(65+CEILING(rand()*25)))+RIGHT(rand(),5)
select UPPER( CHAR(65+CEILING(rand()*25)))+RIGHT(rand()*10,1)
--字母+年月日时分秒+英文+数字 随机五位
SELECT 'LS'+replace(CONVERT(varchar(10), GETDATE(), 112),'-','')
+replace(CONVERT(varchar(10), GETDATE(), 108),':','')+UPPER( CHAR(65+CEILING(rand()*25)))+RIGHT(rand(),5)
--字母+年月日时分秒+英文 多位随机英文位数+数字 随机3位
SELECT 'LS'+replace(CONVERT(varchar(10), GETDATE(), 112),'-','')
+replace(CONVERT(varchar(10), GETDATE(), 108),':','')
+UPPER(CHAR(65+CEILING(RAND()*25))
+CHAR( 65+CEILING(RAND()*25))
+CHAR( 65+CEILING(RAND()*25))
+CHAR( 65+CEILING(RAND()*25))
)+RIGHT(rand(),3)

2.SQL获取本周 上周 本月 上月  的开始时间和结束时间

            DECLARE @ThisWeekStartTime NVARCHAR(100),@ThisWeekEndTime NVARCHAR(100),--本周
@LastWeekStartTime NVARCHAR(100),@LastWeekEndTime NVARCHAR(100),--上周
@ThisMonthStartTime NVARCHAR(100),@ThisMonthEndTime NVARCHAR(100),--本月
@LastMonthSartTime NVARCHAR(100),@LastMonthEndTime NVARCHAR(100),--上月
@LastestHalfYearStartTime NVARCHAR(100),@LastestHalfYearEndTime NVARCHAR(100),--近半年
@LastestOneYearStartTime NVARCHAR(100),@LastestOneYearEndTime NVARCHAR(100)--近一年 SELECT @ThisWeekStartTime= CONVERT(nvarchar(10), DATEADD(wk, DATEDIFF(wk,0,DATEADD(dd, -1, getdate()) ), 0),121)--本周开始时间
SELECT @ThisWeekEndTime= CONVERT(nvarchar(10), DATEADD(wk, DATEDIFF(wk,0,DATEADD(dd, -1, getdate()) ), 6),121)--本周结束时间 SELECT @LastWeekStartTime= CONVERT(nvarchar(10),DATEADD(wk, DATEDIFF(wk,0,DATEADD(dd, -7, getdate()) ), 0),121)--上周开始时间
SELECT @LastWeekEndTime= CONVERT(nvarchar(10), DATEADD(wk, DATEDIFF(wk,0,DATEADD(dd, -7, getdate()) ), 6),121)--上周结束时间 SELECT @ThisMonthStartTime=CONVERT(nvarchar(10),dateadd(dd,-day(getdate())+1,getdate()),121)--本月开始时间
SELECT @ThisMonthEndTime=CONVERT(nvarchar(10),dateadd(dd,-day(getdate()),dateadd(m,1,getdate())),121)--本月结束时间 SELECT @LastMonthSartTime=CONVERT(nvarchar(10),dateadd(dd,-day(dateadd(month,-1,getdate()))+1,dateadd(month,-1,getdate())),121)--上月开始时间
SELECT @LastMonthEndTime= CONVERT(nvarchar(10), dateadd(dd,-day(getdate()),getdate()),121) --上月结束时间 SELECT @LastestHalfYearStartTime= CONVERT(nvarchar(10), dateadd(dd,-day(dateadd(month,-6,getdate()))+1,dateadd(month,-6,getdate())) ,121)--近半年开始时间
SELECT @LastestHalfYearEndTime=CONVERT(nvarchar(10), dateadd(dd,-day(getdate()),getdate()),121)--近半年结束时间 SELECT @LastestOneYearStartTime= CONVERT(nvarchar(10), dateadd(dd,-day(dateadd(month,-12,getdate()))+1,dateadd(month,-12,getdate())) ,121)--近一年开始时间
SELECT @LastestOneYearEndTime=CONVERT(nvarchar(10), dateadd(dd,-day(getdate()),getdate()),121)--近一年结束时间 --当前时间 select getdate()
--当前时间周的起始日期(以周一为例)select DATEADD(week,DATEDIFF(week,0,getdate()),0)
--上周起始:select dateadd(week,-1,DATEADD(week,DATEDIFF(week,0,getdate()),0))
--上上周起始:select dateadd(week,-2,DATEADD(week,DATEDIFF(week,0,getdate()),0))
--上上上周起始:select dateadd(week,-3,DATEADD(week,DATEDIFF(week,0,getdate()),0))

3. 开始时间和结束时间拼接一起

SELECT CONVERT(nvarchar(10),dateadd(dd,-day(dateadd(month,-1,getdate()))+1,dateadd(month,-1,getdate())),121)+'~'+
CONVERT(nvarchar(10), dateadd(dd,-day(getdate()),getdate()),121)--上月开始时间~结束时间 作为周期时间 SELECT @LastMonthTime=CONVERT(nvarchar(10),dateadd(dd,-day(dateadd(month,-1,getdate()))+1,dateadd(month,-1,getdate())),121)+'~'+
CONVERT(nvarchar(10), dateadd(dd,-day(getdate()),getdate()),121)--上月开始时间~结束时间 作为周期时间
--取年月格式
SELECT convert(VarChar(7), '2018-11-31 23:59:59',120) select CONVERT(VarChar(7), GETDATE(), 120) -- 分组查询统计 COUNT 中使用 case when then end
select d.Name,
count(case when d.Name='A' then 'num' end)as AA,
count(case when d.Name='B' then 'num' end)as BB,
count(case when d.Name='C' then 'num' end)as CC,
count(case when d.Name='D' then 'num' end)as DD,
count(case when d.Name='E' then 'num' end)as EE,
count(case when d.Name='F' then 'num' end)as FF,
count(case when d.Name='G' then 'num' end)as GG
from Brands d
group by d.Name
--取年月日格式
Select CONVERT(varchar(100), GETDATE(), 23)--2018-11-22
Select CONVERT(varchar(100), '2018-11-31 23:59:59', 23)--2018-11-22
Select CONVERT(varchar(10),'2018-11-01 23:59:59',120)+'-'+CONVERT(varchar(10),'2018-11-31 23:59:59',120)
    --标准Update写法
update A SET A.SettleState='已结算',A.SettleDate=getdate() FROM OrderDetail A
WHERE A.SettleState='待结算'

SQL Server 各种时间业务处理的更多相关文章

  1. sql server日期时间转字符串

    一.sql server日期时间函数Sql Server中的日期与时间函数 1.  当前系统日期.时间     select getdate()  2. dateadd  在向指定日期加上一段时间的基 ...

  2. SQL Server日期时间格式转换字符串详解 (详询请加qq:2085920154)

    在SQL Server数据库中,SQL Server日期时间格式转换字符串可以改变SQL Server日期和时间的格式,是每个SQL数据库用户都应该掌握的.本文我们主要就介绍一下SQL Server日 ...

  3. SQL Server日期时间格式转换字符串

    在SQL Server数据库中,SQL Server日期时间格式转换字符串可以改变SQL Server日期和时间的格式,是每个SQL数据库用户都应该掌握的.本文我们主要就介绍一下SQL Server日 ...

  4. sql server日期时间转字符串(转)

    一.sql server日期时间函数Sql Server中的日期与时间函数 1.  当前系统日期.时间     select getdate()  2. dateadd  在向指定日期加上一段时间的基 ...

  5. SQL Server日期时间格式转换字符串详解

    本文我们主要介绍了SQL Server日期时间格式转换字符串的相关知识,并给出了大量实例对其各个参数进行对比说明,希望能够对您有所帮助. 在SQL Server数据库中,SQL Server日期时间格 ...

  6. SQL Server 取日期时间格式 日期与字符串之间的转换

    SQL Server 取日期时间部分   在本文中,GetDate()获得的日期由两部分组成,分别是今天的日期和当时的时间: Select GetDate()  用DateName()就可以获得相应的 ...

  7. sql server 日期时间与字符串的转换

    一.sql server日期时间函数Sql Server中的日期与时间函数 1.  当前系统日期.时间     select getdate()  2. dateadd  在向指定日期加上一段时间的基 ...

  8. sql server日期时间函数

    From:http://www.cnblogs.com/linzheng/archive/2010/11/17/1880208.html 1.  当前系统日期.时间  select getdate() ...

  9. SQL Server 系统时间

    getdate()函数:取得系统当前的日期和时间.返回值为datetime类型的. 用法:getdate() 例子: select getdate() as dte,dateadd(day,-1,ge ...

随机推荐

  1. 使用vue iview遇到的一些问题

    使用阿里巴巴图标库 下载代码 这五个文件 iconfount.css 如果导入多个文件记得把@font-face复制到里面 改成./路径 //main.js import './assets/font ...

  2. Codeforces Round #530 (Div. 2)

    RANK :2252 题数 :3 补题: D - Sum in the tree 思路:贪心 把权值放在祖先节点上 ,预处理 每个节点保存 他与他儿子中 权值最小值即可. 最后会有一些叶子节点依旧为 ...

  3. 如何基于asp.net core的Identity框架在mysql上作身份验证处理

    首先了解这个概念,我一开始也是理解和掌握基本的概念,再去做程序的开发.Identity框架是微软自己提供,基于.net core平台,可拓展.轻量 级.面向多个数据库的身份验证框架.IdentityS ...

  4. 简单总结下opacity、transparent以及rgba

    这几个概念最开始学的时候只是有个大致印象,现在复习这部分的知识点,发现不仔细区分一下,还真有点混乱. 三者共同点是都和透明有关.先分着来说一下: 1.opacity用来设置元素的不透明级别,从 0.0 ...

  5. DataGridView修改数据并传到数据库

    1. 两个属性设置: 第一个:设置自动创建列,默认为True DataGridView1. AutoGenerateColumns = True; 虽然默认为True,但写下去总是好的!!! 第二个: ...

  6. java 分布式与集群的区别和联系(转)

    本文主要介绍了java分布式与集群的区别和联系,具有很好的参考价值,下面跟着小编一起来看下吧 一.先说区别: 一句话:分布式是并联工作的,集群是串联工作的. 1.分布式是指将不同的业务分布在不同的地方 ...

  7. AC自动机算法小结

    AC自动机,可惜不能自动AC 转载:飘过的小牛 OIer55242 简介 Aho-Corasick automation 该算法在1975年产生于贝尔实验室,是著名的多模匹配算法之一.一个常见的例子就 ...

  8. BZOJ4962 : 简单的字符串

    枚举子串的中心,往两侧扩展,将两侧对应位置的字符交替写下来,得到一个字符串$S$. 若前后长度为$L$的子串循环同构,则在$S$中它们对应长度为$2L$的前缀,需要满足它可以由不超过$2$个偶回文串拼 ...

  9. Yii2 数据库sql查询

    Yii2.0 对数据库 查询的一些简单的操作 User::find()->all(); //返回所有数据: User::findOne($id); //返回 主键 id=1 的一条数据(举个例子 ...

  10. strtok strchr strrchr strchrnul

    NAME       strchr, strrchr, strchrnul - locate character in string SYNOPSIS       #include <strin ...