mysql数据库获取年龄:TIMESTAMPDIFF(YEAR, [出生日期字段], CURDATE())
select  * from (select  name 姓名,TIMESTAMPDIFF(YEAR, [出生日期字段], CURDATE()) 年龄 from [表名]  )a;

sqlserver数据库获取年龄:DATEDIFF(yy,[出生日期字段],GETDATE())
select id AS 编号,SStudentName AS 姓名,DATEDIFF(yy,[出生日期字段],GETDATE())as 年龄 from[表名]

获取过去的多少秒

select * from [表名] where [字段名] > SUBDATE(now(),interval [多少秒] second)

获取过去的多少分钟

select * from [表名] where [字段名] > SUBDATE(now(),interval [多少分钟] minute)

第7点日期相关函数整理

一、sql server数据库

1. 获取当前日期

select GETDATE()

格式化:

select CONVERT(varchar,GETDATE(),120) --2017-05-12 16:33:10

2. 获取当前年  --2017

select DATENAME(YYYY,GETDATE()) --2017

select DATENAME(YEAR,GETDATE()) --2017

select DATEPART(YYYY,GETDATE()) --2017

select DATEPART(YEAR,GETDATE()) --2017

select YEAR(GETDATE())--2017

3.获取当前月 --05或5

select DATENAME(MM,GETDATE()) --05
select DATENAME(MONTH,GETDATE()) --05

select DATEPART(MM,GETDATE()) --5
select DATEPART(MONTH,GETDATE()) --5

select MONTH(GETDATE()) --5

4.获取当前日期 --07或7

select DATENAME(DAY,GETDATE()-5) --7
select DATENAME(D,GETDATE()-5) --7
select DATENAME(DD,GETDATE()-5) --7

select DATEPART(D,GETDATE()-5) --7
select DATEPART(DD,GETDATE()-5) --7 
select DATEPART(DAY,GETDATE()-5) --7

select DAY(GETDATE()-5)

5. 获取当前年月 --201705

select CONVERT(varchar(6),GETDATE(),112) --201705

select CONVERT(varchar(7),GETDATE(),120) --2017-05

6.获取当前年月日 --20170512

select CONVERT(varchar(8),GETDATE(),112) --20170512

select CONVERT(varchar(10),GETDATE(),120) --2017-05-12

7.日期相关函数整理:

GETDATE() :获取当前时间,时间格式默认。

DATENAME:参数为两个,取值区间 interval 和时间 date

date 就是时间;

interval  包括 年,月,日,星期等

e.g:

YEAR 年;YYYY 年;YY 年;
               QUARTER 季度;QQ 季度 ;Q 季度;
               MONTH 月(05);MM 月(05);M 月(05);
               WEEKDAY 星期几;DW 星期几;W 星期几;
               WEEK 一年的第几周;WK 一年的第几周;WW 一年的第几周;ISOWK 一年的第几周;ISOWW 一年的第几周;ISO_WEEK 一年的第几周;
               DAY 天;DD 天;D 天;
               DAYOFYEAR 一年的第几天;DY 一年的第几天;Y 一年的第几天;
               HOUR 小时;HH 小时;
               MINUTE 分钟;MI 分钟;N 分钟;
               SECOND 秒;SS 秒;S 秒;
               MCS 微秒(略);MICROSECOND 微秒(略);MILLISECOND 毫秒(略);MS 毫秒(略) ; NANOSECOND 十亿分之一秒(略);NS 十亿分之一秒(略);

DATEPART:参数参考DATENAME,不过返回值不一样,DATENAME返回varchar,DATEPART返回int

CONVERT 函数转换格式:主要注意第三个参数 date_style ;格式:select CONVERT(varchar,GETDATE(),0)

最后的 date_style 可以有 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,100,

101,102,103,104,105,106,107,108,109,110,111,112,113,114,120,121,126,127,130,131等

常用的 20,23,24,102,111,112,120等;

示例:

select CONVERT(varchar,GETDATE(),20)  --2017-05-12 17:22:22
                        select CONVERT(varchar,GETDATE(),23)  --2017-05-12
                        select CONVERT(varchar,GETDATE(),24)  --17:23:42
                        select CONVERT(varchar,GETDATE(),102) --2017.05.12
                        select CONVERT(varchar,GETDATE(),111) --2017/05/12
                        select CONVERT(varchar,GETDATE(),112) --20170512

字符串转日期:select CONVERT(datetime,'2017-05-12',20) 第三个参数参考以上。

二、mysql 数据库

1、获取生日

select  * from (select  Sname 姓名,TIMESTAMPDIFF(YEAR, [出生日期字段], CURDATE()) 年龄 from Student  )a;

2、获取时间

select now() 当前时间;
 
SELECT curdate() 当天日期;

select date_sub(curdate(),interval 1 day) 前一天日期;

select date_sub(curdate(),interval 1 year) 上一年日期;

select date_sub(curdate(),interval 1 month) 上个月日期;

 

SELECT YEAR(DATE_SUB(CURDATE(),INTERVAL 0 year)) 当前年份;

SELECT YEAR(DATE_SUB(CURDATE(),INTERVAL 1 year)) 上一年份;

SELECT month(DATE_SUB(CURDATE(),INTERVAL 0 month)) 当前月份;

SELECT month(DATE_SUB(CURDATE(),INTERVAL 1 month)) 上一月份;

SELECT day(DATE_SUB(CURDATE(),INTERVAL 0 DAY)) 当前几号;

SELECT day(DATE_SUB(CURDATE(),INTERVAL 1 DAY)) 前一天几号;

sql获取时间、年龄的更多相关文章

  1. 【HANA系列】SAP HANA SQL获取时间中的小时

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA SQL获取时间 ...

  2. SQL 获取时间格式

    2018-12-17 22:31:01  SQL    :  CONVERT(varchar(100), GETDATE(), 20) Oracle:   to_date(SYSDATE(),'yyy ...

  3. sql获取时间

    SELECT CONVERT(varchar(10), getdate(), 120)--当前年月日,Example:2013-11-19 SELECT CONVERT(varchar(10), ge ...

  4. sql获取时间时分秒

    select datename(hour,getdate())+':'+datename(minute,getdate())+':'+datename(second,getdate())

  5. sql---字段类型转换,sql获取当前时间

    一.字段类型转换 convert(要转换成的数据类型,字段名称)例如 convert(varchar(100),col_name)Convert(int,Order_no) 二.sql获取当前时间 s ...

  6. 获取时间SQL函数语句

    1.获取时间 获取当天的数据 where  DATEDIFF (DD, 数据库中时间的字段 ,GETDATE())=0 查询24小时内的 where  DATEDIFF (HH, 数据库中时间的字段 ...

  7. SQL Server时间粒度系列----第3节旬、月时间粒度详解

    本文目录列表: 1.SQL Server旬时间粒度2.SQL Server月有关时间粒度 3.SQL Server函数重构 4.总结语 5.参考清单列表   SQL Server旬时间粒度       ...

  8. SQL Server时间粒度系列----第4节季、年时间粒度详解

    本文目录列表: 1.SQL Server季时间粒度2.SQL Server年时间粒度 3.总结语 4.参考清单列表   SQL Serve季时间粒度       季时间粒度也即是季度时间粒度.一年每3 ...

  9. sqlserver 获取时间年月日时分秒

    转自:http://blog.itpub.net/14766526/viewspace-1156100/ select GETDATE() as '当前日期',DateName(year,GetDat ...

随机推荐

  1. 流畅的python和cookbook学习笔记(三)

    1.双向队列 collections.deque 类(双向队列)是一个线程安全.可以快速从两端添加或者删除元素的数据类型. rotate和popleft操作,rorate可以把前后元素换位.pople ...

  2. redis的安全问题

    1.修改redis.conf配置文件 2.重启redis服务,使其生效 3.成功登陆以后,使用auth+密码 或者在登录的时候使用-a 密码的授权方式

  3. Spring AOP注解通过@Autowired,@Resource,@Qualifier,@PostConstruct,@PreDestroy注入属性的

    本文介绍了使用spring注解注入属性的方法. 使用注解以前,注入属性通过类以及配置文件来实现.现在,注入属性可以通过引入@Autowired注解,或者@Resource,@Qualifier,@Po ...

  4. COGS2485 从零开始的序列

    传送门 题意:给定一个长为$n$的序列,定义$f(x)$表示所有(长为$x$的区间最小值)的最大值,求$f(1)$~$f(n)$. 看好多人都用并查集做的,然而我并不想写……既然品酒大会可以后缀数组+ ...

  5. java 反射实现2个int变量值的交换

    import java.io.*;import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; ...

  6. 软件项目技术点(5)——在canvas上绘制动态网格线

    AxeSlide软件项目梳理   canvas绘图系列知识点整理 grid类的实现 当鼠标在画布上缩放时,网格能跟着我的鼠标滚动而相应的有放大缩小的效果. 下面是具体实现的代码,draw函数里计算出大 ...

  7. JS Event 鼠标拖拽事件

    <!DOCTYPE html><html> <head>        <meta charset="UTF-8">         ...

  8. 三重for循环实现对二维数组的按列排序(JavaScript)

    由C语言联想到的:三重for循环实现对二维数组的按列排序,并且牵扯到数据结构. 自己写的,水平有限,本文属于原创,可能存在错误,忘指正~ function circle() { var a = [ [ ...

  9. 回溯法最优装载问题(java)

    1.问题描述:      有一批共有 n 个集装箱要装上两艘载重量分别为 c1 和 c2 的轮船,其中集装箱 i 的重量为 w[i], 且重量之和小于(c1 + c2).装载问题要求确定是否存在一个合 ...

  10. 05_zookeeper的ACL

    [ACL概述] ACL:access control Lists,权限控制. * 针对节点可以设置相关的读写等权限,目的是为了保障数据安全性. * 权限permissions可以指定不同的权限范围以及 ...