美文网首页
mysql学习(1)

mysql学习(1)

作者: Bob_Running | 来源:发表于2019-05-23 11:39 被阅读0次

# *****************************常用查询****************************
SELECT VERSION();

SHOW ENGINES;

#IFNULL(e1,r1):如果e1为空,则返回r1;
SELECT IFNULL(`user`.photo,"") FROM `user`;

#IF(e1,r1,r2):类似于三目运算符
SELECT IF( STRCMP(`user`.photo,'default.jpg')=0,"default","---") FROM `user`;

# *****************************全局变量*****************************

/*
展示系统变量,当不加global的时候,默认为会话变量
*/
show GLOBAL VARIABLES;

SHOW GLOBAL VARIABLES LIKE '%char%';


#查询前局变量
SELECT @@global.character_set_client;

/*
设置全局变量,当mysql重启后,设置的全局变量会被默认值替代
*/

SET @@global.character_set_client='utf8mb4';

# ********************************会话变量***************************

/*
展示会话变量
*/
SHOW SESSION VARIABLES;

#查询会话变量
SELECT @@session.character_set_client;

/*
设置会话变量,只在当前会话有效,当开启一个新的会话时,将无效。
*/
SET @@session.character_set_client='utf8mb4';

#*********************************字符串处理***************************

-- 字符串拼接

#concat函数可以一次性拼接多个字符串或数值型
SELECT CONCAT(city,addrDetail,mobile) FROM address;

-- 字符串比较

#strcmp(str1,str2)函数:当str1>str2,返回1;当str1=str2,返回0;当str1<str2时,返回-1.
SELECT STRCMP("1","2");

-- 字符串截取

#substr(str,start):字符串的起始位置为1,不是0.
SELECT SUBSTR("abcdefghijkl",1);

#substring(str,start,length):length代表截取的长度
SELECT SUBSTRING("abcdefghijkl",1,3);

#*******************************日期型********************************

-- 返回当前的日期和时间
SELECT NOW();

-- 返回当前的日期
SELECT CURDATE();

-- 返回当前的时间
SELECT CURTIME();

-- 提取日期部分
SELECT DATE(NOW());

-- 用于返回日期/时间的单独部分,比如年、月、日、小时、分钟等等。
SELECT EXTRACT(WEEK FROM NOW());

-- 给指定日期添加时间,可以选择添加的时间类型

/*
unit类型为:

MICROSECOND
SECOND
MINUTE
HOUR
DAY
WEEK
MONTH
QUARTER
YEAR
SECOND_MICROSECOND
MINUTE_MICROSECOND
MINUTE_SECOND
HOUR_MICROSECOND
HOUR_SECOND
HOUR_MINUTE
DAY_MICROSECOND
DAY_SECOND
DAY_MINUTE
DAY_HOUR
YEAR_MONTH
*/
SELECT DATE_ADD(NOW(), INTERVAL 2 DAY);

-- 返回两个时间相差的天数
SELECT DATEDIFF(NOW(),  "2020/01/01");

-- 给指定日期减少时间
SELECT DATE_SUB(NOW(),INTERVAL 2 MINUTE);

-- 将字符串转换为日期
SELECT STR_TO_DATE("2020/01/01 00:00","%Y/%m/%d %H:%m");

-- 日期转字符串
SELECT DATE_FORMAT(NOW(),"%Y/%m/%d");

#*******************************运算符********************************

-- +

#加号只能进行数值型操作
SELECT 1+2;
#如果其中一方为字符型,试图将其转换为数值型,如果转换成功,则进行加法计算;如果转换失败,则将字符型转为0;如果一方为null,则结果为null。
SELECT "aaa"+11;
SELECT "22"+11;
SELECT "22"+"11";

-- /
SELECT 5/4;

-- mod求余
SELECT MOD(5,4);

-- 绝对值
SELECT ABS(1);
SELECT ABS(-1);

-- 四舍五入
SELECT ROUND(1.6);
SELECT ROUND(1.2);
SELECT ROUND(-1.6);
SELECT ROUND(-1.2);

-- 取比其大的,最接近的整数值
SELECT CEIL(1.2);
SELECT CEIL(-1.2);
SELECT CEIL(-1.6);

-- 取比其小的,最接近的整数值
SELECT FLOOR(1.2);
SELECT FLOOR(1.6);
SELECT FLOOR(-1.2);
SELECT FLOOR(-1.6);







相关文章

  • 三. PHP与MySQL关系大揭秘

    PHP内置MySQL函数学习(1) PHP内置MySQL函数学习(2) PHP内置MySQL函数学习(2)

  • MYSQL学习(1)

    1、SQL写作目的 我是一个文科生,代码对我来说是个外星语言,我也没有想到在我的工作中会用到代码,刚来百度...

  • mysql学习(1)

    登录到MySQLmysql -h 主机名 -u 用户名 -ph:要登录的MySQL主机名,登录当前机器可以省略u:...

  • mysql学习(1)

  • 2018-07-21

    MySQL学习1、数据库管理1-1、创建数据库create database MySQLTest; mysql> ...

  • MySQL--基础

    一、相关资源 mysql基础介绍:mysql学习 数据库终端快速补全工具:mycli 1.mysql对表的操作 1...

  • MySQL 学习实践笔记(四)

    MySQL 学习实践系列 MySQL 学习实践笔记(一) MySQL 学习实践笔记(二) MySQL 学习实践笔记...

  • MySQL 学习实践笔记(三)

    MySQL 学习实践系列 MySQL 学习实践笔记(一) MySQL 学习实践笔记(二) MySQL 学习实践笔记...

  • MySQL 学习实践笔记(二)

    MySQL 学习实践系列 MySQL 学习实践笔记(一) MySQL 学习实践笔记(二) MySQL 学习实践笔记...

  • MySQL 学习实践笔记(一)

    MySQL 学习实践系列 MySQL 学习实践笔记(一) MySQL 学习实践笔记(二) MySQL 学习实践笔记...

网友评论

      本文标题:mysql学习(1)

      本文链接:https://www.haomeiwen.com/subject/vzdvzqtx.html