mysql日期函数

mysql计算时间

▼魔方 西西 提交于 2019-12-03 19:58:32
一、MySQL 获得当前日期时间 函数 1.1 获得当前日期+时间(date + time)函数:now() mysql> select now(); +---------------------+ | now() | +---------------------+ | 2008-08-08 22:20:46 | +---------------------+ 除了 now() 函数能获得当前的日期时间外,MySQL 中还有下面的函数: current_timestamp() ,current_timestamp ,localtime() ,localtime ,localtimestamp -- (v4.0.6) ,localtimestamp() -- (v4.0.6) 这些日期时间函数,都等同于 now()。鉴于 now() 函数简短易记,建议总是使用 now() 来替代上面列出的函数。 1.2 获得当前日期+时间(date + time)函数:sysdate() sysdate() 日期时间函数跟 now() 类似,不同之处在于:now() 在执行开始时值就得到了, sysdate() 在函数执行时动态得到值。看下面的例子就明白了: mysql> select now(), sleep(3), now(); +---------------------+----------

MySql中计算两个间隔日期天数

蹲街弑〆低调 提交于 2019-12-03 17:34:48
1.利用To_Days函数; select to_days(now())-to_days('时间字段') ; 2.利用DateDiff函数; select datediff(now(),'时间字段') ; 案例: 参数1-参数2等于间隔天数 select ( datediff( curdate(), date(colunm_name1))- ( select colunm_name2 from table_name2)) as o from table_name1 ; 来源: https://www.cnblogs.com/lrzb/p/11805134.html

MYSQL+正则

久未见 提交于 2019-12-03 17:23:40
mysql中修改表字段名/字段长度/字段类型详解 - 追忆丶年华 - 博客园 (1条消息)group by 与 where, having以及顺序 - weixin_41512727的博客 - CSDN博客 (1条消息)数据库:深入浅出mysql学习笔记【超级详细(四)】--排序的使用,GROUP BY 语句分组 - 拨云见日的博客 - CSDN博客 (1条消息)数据库:深入浅出mysql学习笔记【超级详细(五)】--JOIN 联表的使用 - 拨云见日的博客 - CSDN博客 (1条消息)数据库:深入浅出mysql学习笔记【超级详细(一)】--mysql的安装,启动和数据类型详细介绍 - 拨云见日的博客 - CSDN博客 (1条消息)数据库:深入浅出mysql学习笔记【超级详细(二)】--mysql的增删改查 - 拨云见日的博客 - CSDN博客 (1条消息)数据库:深入浅出mysql学习笔记【超级详细(三)】--where子句,delete子句,like子句,union子句的使用 - 拨云见日的博客 - CSDN博客 (1条消息)数据库:深入浅出mysql学习笔记【超级详细(六)】--null值的处理,正则表达式 - 拨云见日的博客 - CSDN博客 数据库:深入浅出mysql学习笔记【超级详细(七)】--mysql的事务机制 - 拨云见日的博客 - CSDN博客 数据库

mysql和oracle的不同

不问归期 提交于 2019-12-03 16:31:50
一、日期处理 oracle查询当前日期:select to_char(sysdate,'yyyy-mm-dd') from dual; mysql查询当前日期:select date_format(now(),'%Y-%m-%d'); 二、连接字符串在Oracle中用|| ,SqlServer中用+,MySQL中用concat('a','b','c') 三、mysql与oracle数据库实现自增列的区别: mysql可以实现自增列,只要在建表时设置auto_increment即可,而oracle在建表时不能设置自增列功能,必须通过sequence序列来实现自增列功能。 四、mysql与oracle数据库索引的区别: 在整个数据库内,mysql的索引可以同名,也就是说mysql的索引是表级别的;但是Oracle索引不可以同名,也就是说Oracle的索引是数据库级别的; mysql的索引是从0开始,oracle的索引是从1开始。 五、翻页的SQL语句的处理 MYSQL处理翻页的SQL语句比较简单,用LIMIT开始位置,记录个数; ORACLE处理翻页的 SQL语句就比较繁琐了。每个结果集只有一个ROWNUM字段标明它的位置,并且只能用ROWNUM<100,不能用ROWNUM>80。 六、组函数用法规则 mysql中组函数在select语句中可以随意使用

mysql时间日期函数

自古美人都是妖i 提交于 2019-12-03 06:39:05
mysql时间日期函数 now(), current_timestamp(); -- 当前日期时间 current_date(); -- 当前日期 current_time(); -- 当前时间 date('yyyy-mm-dd hh:ii:ss'); -- 获取日期部分 time('yyyy-mm-dd hh:ii:ss'); -- 获取时间部分 date_format('yyyy-mm-dd hh:ii:ss', '%d %y %a %d %m %b %j'); -- 格式化时间 unix_timestamp(); -- 获得unix时间戳 from_unixtime(); -- 从时间戳获得时间 官网: https://dev.mysql.com/doc/refman/8.0/en/date-and-time-functions.html#function_yearweek select now(),current_date,current_time; 格式: 查询每个月1号 select * from lagouok where right(date_format([字段],'%Y-%m-%d'),2)=1 获取星期几 select dayofweek(now())-1 dayofweek(字段)=1 查询每个月星期二 mysql根据生日查询年龄 select year

mysql日期模糊查找的方法

喜夏-厌秋 提交于 2019-12-03 06:38:55
Mysql模糊查询有以下三种方法: 1.Convert转成日期时间型,在用Like查询。select * from table1 where convert(date,DATETIME) like '2006-04-01%' 第一种方法应该适用与任何数据类型; 2.Betweeselect * from table1 where time between '2018-08-01 0:00:00' and '2018-08-01 24:59:59'"; 第二种方法适用String外的类型; 3 datediff()函数select * from table1 where datediff(create_time,'2018-08-01')=0 第三种方法则是为date类型定制的比较实用快捷的方法。 来源: https://www.cnblogs.com/superming/p/11780991.html

MySQL 常用函数介绍

谁都会走 提交于 2019-12-02 23:29:37
MySQL 基础篇 三范式 MySQL 军规 MySQL 配置 MySQL 用户管理和权限设置 MySQL 常用函数介绍 MySQL 字段类型介绍 MySQL 多列排序 MySQL 行转列 列转行 MySQL NULL 使用带来的坑 MySQL AND 和 OR 联合使用带来的坑 MySQL 触发器的使用 数值型函数 函数名称 作用 ABS 求绝对值 SQRT 求二次方根 MOD 求余数 CEIL 和 CEILING 两个函数功能相同,都是返回不小于参数的最小整数,即向上取整 FLOOR 向下取整,返回值转化为一个BIGINT RAND 生成一个0~1之间的随机数,传入整数参数是,用来产生重复序列 ROUND 对所传参数进行四舍五入 SIGN 返回参数的符号 POW 和 POWER 两个函数的功能相同,都是所传参数的次方的结果值 SIN 求正弦值 ASIN 求反正弦值,与函数 SIN 互为反函数 COS 求余弦值 ACOS 求反余弦值,与函数 COS 互为反函数 TAN 求正切值 ATAN 求反正切值,与函数 TAN 互为反函数 COT 求余切值 字符串函数 函数名称 作用 LENGTH 计算字符串长度函数,返回字符串的字节长度 CONCAT 合并字符串函数,返回结果为连接参数产生的字符串,参数可以使一个或多个 INSERT 替换字符串函数 LOWER 将字符串中的字母转换为小写

MySQL必知应会-第12章-汇总数据

匿名 (未验证) 提交于 2019-12-02 22:06:11
本章介绍什么是SQL的聚集函数以及如何利用它们汇总表的数据。 我们经常需要汇总数据而不用把它们实际检索出来,为此MySQL提供了专门的函数。使用这些函数, MySQL查询可用于检索数据,以便分析和报表生成。这种类型的检索例子有以下几种。 确定表中行数(或者满足某个条件或包含某个特定值的行数)。 获得表中行组的和。 找出表列(或所有行或某些特定的行)的最大值、最小值和平均值。 上述例子都需要对表中数据(而不是实际数据本身)汇总。因此,返回实际表数据是对时间和处理资源的一种浪费(更不用说带宽了)。重复一遍,实际想要的是汇总信息。为方便这种类型的检索, MySQL给出了5个聚集函数,见表12-1。这些函数能进行上述罗列的检索。聚集函数( aggregate function) 运行在行组上,计算和返回单个值的函数。 以下说明各函数的使用。 标准偏差 MySQL还支持一系列的标准偏差聚集函数,但本书并未涉及这些内容。 AVG()通过对表中行数计数并计算特定列值之和,求得该列的平均值。 AVG()可用来返回所有列的平均值,也可以用来返回特定列或行的平均值。下面的例子使用AVG()返回products表中所有产品的平均价格: 此SELECT语句返回值avg_Price,它包含products表中所有产品的平均价格。如第10章所述, avg_price是一个别名。AVG(

pymysql内置功能

匿名 (未验证) 提交于 2019-12-02 22:06:11
视图是一个虚拟表(非真实存在),其本质是【根据SQL语句获取动态的数据集,并为其命名】,用户使用时只需使用【名称】即可获取结果集,可以将该结果集当做表来使用。 #语法:CREATE VIEW 视图名称 AS SQL语句 create view teacher_view as select tid from teacher where tname=‘李平老师‘; #于是查询李平老师教授的课程名的sql可以改写为 mysql> select cname from course where teacher_id = (select tid from teacher_view); +--------+ | cname | +--------+ | 物理 | | 美术 | +--------+ rows in set (0.00 sec) #!!!注意注意注意: #1. 使用视图以后就无需每次都重写子查询的sql,但是这么效率并不高,还不如我们写子查询的效率高 #2. 而且有一个致命的问题:视图是存放到数据库里的,如果我们程序中的sql过分依赖于数据库中存放的视图, 那么意味着,一旦sql需要修改且涉及到视图的部分,则必须去数据库中进行修改,而通常在公司中数据库有专门的DBA负责, 你要想完成修改,必须付出大量的沟通成本DBA可能才会帮你完成修改,极其地不方便 #修改视图,原始表也跟着改

mysql格式化日期

匿名 (未验证) 提交于 2019-12-02 22:06:11
mysql查询记录如果有时间戳字段时,查看结果不方便,不能即时看到时间戳代表的含义,现提供mysql格式换时间函数,可以方便的看到格式化后的时间。 1. DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据。 DATE_FORMAT(date,format) format参数的格式有 %a 缩写星期名 %b 缩写月名 %c 月,数值 %D 带有英文前缀的月中的天 %d 月的天,数值(00-31) %e 月的天,数值(0-31) %f 微秒 %H Сʱ (00-23) %h Сʱ (01-12) %I Сʱ (01-12) %i 分钟,数值(00-59) %j 年的天 (001-366) %k Сʱ (0-23) %l Сʱ (1-12) %M 月名 %m 月,数值(00-12) %p AM 或 PM %r 时间,12-小时(hh:mm:ss AM 或 PM) %S 秒(00-59) %s 秒(00-59) %T 时间, 24-小时 (hh:mm:ss) %U 周 (00-53) 星期日是一周的第一天 %u 周 (00-53) 星期一是一周的第一天 %V 周 (01-53) 星期日是一周的第一天,与 %X 使用 %v 周 (01-53) 星期一是一周的第一天,与 %x 使用 %W 星期名 %w 周的天 (0=星期日, 6=星期六) %X 年,其中的星期日是周的第一天,4