结束时间),删除表中数据(并且会清除主键标识

2019-09-08 作者:数据库   |   浏览(179)
select GETDATE() as '当前日期',
    DateName(year,GetDate()) as '年',
    DateName(month,GetDate()) as '月',
    DateName(day,GetDate()) as '日',
    DateName(dw,GetDate()) as '星期',
    DateName(week,GetDate()) as '周数',
    DateName(hour,GetDate()) as '时',
    DateName(minute,GetDate()) as '分',
    DateName(second,GetDate()) as '秒'

SELECT SUBSTRING(CONVERT(varchar(100),时间字段, 22),0,15) AS aa  FROM  表名 

datediff语法格式:datediff(day,开始时间,结束时间)

查找某列数据包含某一字符串:

结果:

一、应用举例:

SELECT * FROM table WHERE column LIKE  '%string%'

2016-03-23 11:04:14.450  2016 03 23 星期三 13 11 4 14       

select * from [dbo].[Kah_Order_Sum] where datediff(day,'2016-09-20',created_time)>1

 

 

上面的代码,将查询 'created_time' > '2016-09-20'  的所有记录。

查找某列数据不包含某一字符串

1.显示本月第一天
SELECT DATEADD(mm,DATEDIFF(mm,0,getdate()),0) 
select convert(datetime,convert(varchar(8),getdate(),120) '01',120)

如果要查询'created_time' < '2016-09-20'  的所有记录,有两个方法:

SELECT * FROM table WHERE column NOT LIKE '%string%'

2.显示本月最后一天
select dateadd(day,-1,convert(datetime,convert(varchar(8),dateadd(month,1,getdate()),120) '01',120))
小鱼儿玄机30码姐妹,SELECT dateadd(ms,-3,DATEADD(mm,DATEDIFF(m,0,getdate()) 1,0)) 

1、把最后的>1,改成<0;

 

3.上个月的最后一天 
SELECT dateadd(ms,-3,DATEADD(mm,DATEDIFF(mm,0,getdate()),0)) 

2、把两个字顺序互调,变成 datediff(day,created_time,'2016-09-20')>0

替换某字段中的部分字符串

4.本月的第一个星期一
select DATEADD(wk,DATEDIFF(wk,0, dateadd(dd,6-datepart(day,getdate()),getdate())),0)

 

UPDATE table SET column = REPLACE(column, 源字符串,目标字符串) 

5.本年的第一天 
SELECT DATEADD(yy,DATEDIFF(yy,0,getdate()),0) 

二、讲解

 

6.本年的最后一天 
SELECT dateadd(ms,-3,DATEADD(yy,DATEDIFF(yy,0,getdate()) 1,0))

1、语法:datediff(计算单位,开始时间,结束时间)

使用 B 表中的数据更新到 A 表中

7.去年的最后一天 
SELECT dateadd(ms,-3,DATEADD(yy,DATEDIFF(yy,0,getdate()),0))

计算单位:一般填dayhour(天、小时)

方法①:UPDATE tableA SET columnA = tableB.columnB FROM tableA inner join tableB on tableA.ID = tableB.ID where columnC='条件'
方法②:UPDATE tableA SET columnA = tableB.columnB FROM tableA,tableB where tableA.ID = tableB.ID and columnC='条件'

8.本季度的第一天 
SELECT DATEADD(qq,DATEDIFF(qq,0,getdate()),0)  

开始时间,结束时间:可以填字段或具体的时间。

 

9.本周的星期一 
SELECT DATEADD(wk,DATEDIFF(wk,0,getdate()),0) 

参见:

删除表中数据(并且会清除主键标识)

10.查询本月的记录 
select * from tableName where DATEPART(mm, theDate) = DATEPART(mm, GETDATE()) and DATEPART(yy, theDate) = DATEPART(yy, GETDATE()) 

2、datediff(day,created_time,'2016-09-20')>0 根据返回的是两个列的天数差,来判断是否>0。

TRUNCATE TABLE tablename

11.查询本周的记录 
select * from tableName where DATEPART(wk, theDate) = DATEPART(wk, GETDATE()) and DATEPART(yy, theDate) = DATEPART(yy, GETDATE()) 

    =0,两个时间相等,即查某一天的数据。

 

12.查询本季的记录 
select * from tableName where DATEPART(qq, theDate) = DATEPART(qq, GETDATE()) and DATEPART(yy, theDate) = DATEPART(yy, GETDATE()) 
其中:GETDATE()是获得系统时间的函数。

    >0,结束时间晚于开始时间的0天的数据,<0,结束时间早上开始时间的0天的数据。

子查询 WITH  AS 用法

13.获取当月总天数:
select DATEDIFF(dd,getdate(),DATEADD(mm, 1, getdate()))

三、注意

WITH temptable AS (SELECT * FROM table WHERE column = '查询条件')

SELECT * FROM temptable 

select datediff(day,
dateadd(mm, datediff(mm,'',getdate()), ''),
dateadd(mm, datediff(mm,'',getdate()), '1900-02-01'))

1、日期格式要加单引号,不可直接写。

 

本文由小鱼儿玄机30码发布于数据库,转载请注明出处:结束时间),删除表中数据(并且会清除主键标识

关键词: 小鱼儿玄机30码