mysql日期函数

mysql——常见函数

女生的网名这么多〃 提交于 2020-03-06 16:16:45
#进阶4:常见函数 /* 概念:类似于java中的方法,将一组逻辑语句封装在方法中,对外暴露方法名 好处:1、隐藏了实现细节。2、提高代码的重用性 调用:select 函数名(实参列表) from 表 特点: ①函数名 ②函数功能 分类: ①单行函数 如:concat、ifnull、length等 传一个值,返回一个值 ②分组函数(统计函数、聚合函数、组函数) 功能:做统计使用的 传一组值,返回一个值 */ 单行函数 一、字符函数 #length 获取参数的字节个数 SELECT LENGTH('join'); #4 SELECT LENGTH('张三丰hahaha'); #15,一个汉字占三个字节,一个字母一个字节 SHOW VARIABLES LIKE '%char%'; #显示当前系统支持的字符集 #concat 拼接字符串 SELECT CONCAT(last_name,'_',first_name) FROM employees; #upper/lower SELECT UPPER('join'); #将参数变为大写 SELECT LOWER('JOIN'); #将参数变为小写 #案例1:将姓变大写,将名变小写 SELECT CONCAT(UPPER(last_name),LOWER(first_name)) AS 姓名 FROM employees; #substr

开发工具的学习以及认识

喜你入骨 提交于 2020-03-05 01:51:48
操作系统: 1.Windows操作系统 ⑴直观、高效的面向对象的图形用户界面,易学易用 ⑵用户界面统一、友好、漂亮 ⑶丰富的设备无关的图形操作 ⑷多任务操作环境 2.Unix操作系统 ⑴UNIX系统是一个多用户,多任务的分时操作系统 ⑵UNIX的系统结构可分为三部分:操作系统内核,系统调用,应用程序 ⑶UNIX系统大部分是由C语言编写的 ⑷UNIX提供了丰富的,精心挑选的系统调用 ⑸UNIX提供了功能强大的可编程的Shell语言作为用户界面 ⑹UNIX系统采用树状目录结构 ⑺UNIX系统采用进程对换的内存管理机制和请求调页的存储方式 ⑻UNIX系统提供多种通信机制 3.Linux操作系统 ⑴Linux的基本思想有两点:第一,一切都是文件;第二,每个软件都有确定的用途 ⑵Linux是一款免费的操作系统,用户可以通过网络或其他途径免费获得,并可以任意修改其源代码 ⑶完全兼容POSIX1.0标准 ⑷多用户、多任务操作环境;支持多种平台 4.Mac OS操作系统 ⑴全屏模式是新版操作系统中最为重要的功能,一切应用程序均可以在全屏模式下运行 ⑵任务控制整合了Dock和控制面板,并可以窗口和全屏模式查看各种应用 ⑶快速启动面板的工作方式与iPad完全相同,它以类似于iPad的用户界面显示电脑中安装的一切应用,并通过App Store进行管理,用户可滑动鼠标,在多个应用图标界面间切换 ⑷Mac

MySQL 中的数据类型介绍

。_饼干妹妹 提交于 2020-03-02 19:32:16
1、概述 要了解一个数据库,我们也必须了解其支持的数据类型。 MySQL支持所有标准的SQL数据类型,主要分3类: 数值类型 字符串类型 时间日期类型 另一类是几何数据类型,用的不多,也没多介绍。 下面大、小标题后括号内的数组表示其含有的类型个数。下面所有结论都经过本人使用MySql Workbench编写SQL验证过或来自官网。 2、数值类型(12) 2.1、整数类型(6) 一张图就能解释清楚了: INTEGER同INT。 2.2、定点数(2) DECIMAL和NUMERIC类型在MySQL中视为相同的类型。它们用于保存必须为确切精度的值。 使用方式如下: salary DECIMAL(5,2) 下面的介绍将基于上面这个例子。 我们看到其中有两个参数,即DECIMAL(M,D),其中M表示十进制数字总的个数,D表示小数点后面数字的位数,上例中的取值范围为-999.99~999.99。 如果存储时,整数部分超出了范围(如上面的例子中,添加数值为1000.01),MySql就会报错,不允许存这样的值。 如果存储时,小数点部分若超出范围,就分以下情况: 若四舍五入后,整数部分没有超出范围,则只警告,但能成功操作并四舍五入删除多余的小数位后保存。如999.994实际被保存为999.99。 若四舍五入后,整数部分超出范围,则MySql报错,并拒绝处理。如999.995和-999

MySQL中TIMESTAMPDIFF和TIMESTAMPADD函数的用法

蹲街弑〆低调 提交于 2020-03-01 16:23:21
在MySQL应用时,经常要使用这两个函数TIMESTAMPDIFF和TIMESTAMPADD。 一,TIMESTAMPDIFF 语法: TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2)。 说明: 返回日期或日期时间表达式datetime_expr1 和datetime_expr2the 之间的整数差。其结果的单位由interval 参数给出。该参数必须是以下值的其中一个: FRAC_SECOND。表示间隔是毫秒 SECOND。秒 MINUTE。分钟 HOUR。小时 DAY。天 WEEK。星期 MONTH。月 QUARTER。季度 YEAR。年 使用如下: mysql> select TIMESTAMPDIFF(day,'2012-08-24','2012-08-30'); +----------------------------------------------+ | TIMESTAMPDIFF(day,'2012-08-24','2012-08-30') | +----------------------------------------------+ | 6 | +----------------------------------------------+ 1 row in set (0.00 sec)

MySql函数

旧城冷巷雨未停 提交于 2020-03-01 16:18:55
distinct 去重 字符函数: 数学函数: 日期函数: 其他函数: 控制函数: length :获取长度 round:四舍五入 now:返回当前日期+时间 version:当前数据库版本 if concat:连接 ceil:向上取整 curdate:返回当前日期 datebase:当前打开的数据库 case substr: 截取子串 floor:向下取整 curtime:返回当前时间 user:当前用户 Instr:获取第一次出现的索引 truncate:截断 year:返回年 password(‘字符’):返回该字符的密码形式 trim:去前后空格 mod:取模 month:返回月 md5(‘字符’):返回该字符的md5加密形式 upper:变大写 rand:获取随机数(0-1之间的小数) monthname:以英文形式返回月 lower:变小写 day:返回天 lpad:左填充 hour:返回时 rpad:右填充 minth:返回分 replace:替换 second:返回秒 str_to_date:将字符转换成日期 date_format:将日期转换成字符 来源: https://www.cnblogs.com/64Byte/p/12389774.html

MySQL时间字段究竟使用INT还是DateTime的说明

丶灬走出姿态 提交于 2020-03-01 15:14:47
今天解析DEDECMS时发现deder的MYSQL时间字段,都是用 `senddata` int(10) unsigned NOT NULL DEFAULT '0'; 随后又在网上找到这篇文章,看来如果时间字段有参与运算,用int更好,一来检索时不用在字段上转换运算,直接用于时间比较!二来如下所述效率也更高。 归根结底:用int来代替data类型,更高效。 环境: Windows XP PHP Version 5.2.9 MySQL Server 5.1 第一步、创建一个表date_test(非定长、int时间) CREATE TABLE `test`.`date_test` ( `id` INT NOT NULL AUTO_INCREMENT , `start_time` INT NOT NULL , `some_content` VARCHAR( 255 ) NOT NULL , PRIMARY KEY ( `id` ) ) ENGINE = InnoDB; 第二步、创建第二个表date_test2(定长、int时间) CREATE TABLE `test`.`date_test2` ( `id` INT NOT NULL AUTO_INCREMENT , `start_time` INT NOT NULL , `some_content` CHAR( 255 ) NOT

sql的日期格式化转化

会有一股神秘感。 提交于 2020-02-29 18:39:21
1. DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据。 Sql代码 DATE_FORMAT( date,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 位,与 %V 使用 %x 年,其中的星期一是周的第一天,4 位,与 %v 使用 %Y 年,4 位 %y 年,2 位 实例

MySQL中常用的SQL语句

佐手、 提交于 2020-02-28 21:03:25
如果有名为hrinfo的数据库就删除: DROP DATABASE IF EXISTS hrinfo; 创建名为hrinfo的数据库 : CREATE DATABASE hrinfo; 选择数据库: USE hrinfo; 创建名为PERSON的表,并创建字段: CREATE TABLE PERSON( id INT(11) PRIMARY KEY AUTO_INCREMENT COMMENT '人员编号', `name` NVARCHAR(50) NOT NULL COMMENT '姓名', sex NVARCHAR(50) NOT NULL COMMENT '性别', age INT(20) NOT NULL COMMENT '年龄', rank NVARCHAR(50) NOT NULL COMMENT '等级', department NVARCHAR(100) NOT NULL COMMENT '所在部门' )COMMENT '人员信息表'; 给表里插入数据: INSERT INTO PERSON VALUES (0,'张三','男',25,'1级','开发部'); INSERT INTO PERSON VALUES (0,'王五','男',12,'2级','工程质量部'); INSERT INTO PERSON VALUES (0,'李四','女',30,'5级',

同样是后端程序员,你掌握如何用Grafna做出漂亮的可视化界面了吗?

风格不统一 提交于 2020-02-26 23:27:07
前言 Grafana 有着非常漂亮的图表和布局展示,功能齐全的度量仪表盘dashboard和图形编辑器。此篇文章主要来记录学习 如何使用mysql打造属于我们的可视化监控仪表盘。 安装grafna 采用如下命令直接安装grafna。或是下载.tar.gz包自行安装。 sudo apt-get install -y apt-transport-https sudo apt-get install -y software-properties-common wget wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add - sudo add-apt-repository "deb https://packages.grafana.com/oss/deb stable main" sudo apt-get update sudo apt-get install grafana 在一个Dashboard中一个最基本的可视化单元为一个Panel(面板)。 每一个Panel可以配置自己查询的数据源以及数据查询方式。 当然这里我们使用Mysql作为数据源,其查询方式就是Sql语句。 扩展一下思路: 由于每个Panel是完全独立的,因此在一个Dashboard中,往往可能会包含来自多个Data Source的数据

Oracle与MySQL的几点区别

為{幸葍}努か 提交于 2020-02-25 08:46:13
Oracle数据库与MySQL数据库的区别是本文我们主要介绍的内容,希望能够对您有所帮助。 1.组函数用法规则 mysql中组函数在select语句中可以随意使用,但在oracle中如果查询语句中有组函数,那其他列名必须是组函数处理过的,或者是group by子句中的列否则报错 eg: select name,count(money) from user;这个放在mysql中没有问题在oracle中就有问题了。 2.自动增长的数据类型处理 MYSQL有自动增长的数据类型,插入记录时不用操作此字段,会自动获得数据值。ORACLE没有自动增长的数据类型,需要建立一个自动增长的序列号,插入记录时要把序列号的下一个值赋于此字段。 CREATE SEQUENCE序列号的名称(最好是表名+序列号标记)INCREMENT BY 1 START WITH 1 MAXVALUE 99999 CYCLE NOCACHE; 其中最大的值按字段的长度来定,如果定义的自动增长的序列号NUMBER(6),最大值为999999 INSERT语句插入这个字段值为:序列号的名称.NEXTVAL 3.单引号的处理 MYSQL里可以用双引号包起字符串,ORACLE里只可以用单引号包起字符串。在插入和修改字符串前必须做单引号的替换:把所有出现的一个单引号替换成两个单引号。 4.翻页的SQL语句的处理