MySQL-常用函数

select {函数}({参数});
  • select是查询用的,用来展示函数返回值。

一. 字符串函数

  • 常用的字符串函数:

1. concat 拼接

select concat('Hello','World');

2. lower 转小写

select lower('Hello World');

3. upper 转大写

select upper('Hello World');

4. lpad 左填充

select lpad('YS',10,'-');

5. rpad 右填充

select rpad('YS',10,'-');

6. trim 去前后空格

select trim('   Hello World   ');

7. substring 切割字符串

select substring('Hello World',11,5);

  • 起始位置从1开始算。

二. 数值函数

  • 常用的数值函数:

1. ceil 向上取整

select ceil(1.1);

2. floor 向下取整

select floor(1.9);

3. mod 求模

select mod(9,5);

4. rand 返回0-1随机数

select rand();

5. round 四舍五入

select round(rand(),6);

三. 日期函数

  • 常用的日期函数

1. curdate 返回当前日期

select curdate();

2. curtime 返回当前时间

select curtime();

3. now 返回当前日期和时间

select now();

4. year 获得指定date的年份

select year({date});
  • date可以用日期或日期+时间

5. month 获得指定date的月份

select month({date});

6. day 获得指定date的日期

select day({date});

7. date_add 返回一个date加上一个间隔后的时间

select date_add({date},interval {间隔} {间隔的单位});
  • 间隔的单位:年(year)/月(month)/日(day)

8. datediff 返回两个date间的天数

select datediff({date1},{date2});
  • 如果date1比date2早,返回的则是负数。

四. 流程函数

流程函数可以在SQL语句中实现条件筛选,从而提高语句的效率。

  • 常用的流程函数

1. if 判断

select if({值},{正确的返回值},{错误的返回值});

2. ifnull 判断是否空

select ifnull({值1},{值2});
  • 空字符串('')不为算判断中的空,NULL才算。

3. case 多重判断

# 判断值是否为True
select case
when [{值1}] #当值1为true时,返回返回值1
then [{返回值1}]
...
else [{最终返回值}] #如果前面的值都不为true,返回最终返回值
end; # 判断值
select case [{变量}]
when [{值1}] #当变量等于值1时,返回返回值1
then [{返回值1}]
...
else [{最终返回值}] #如果变量都不等于前面的值,返回最终返回值
end;

MySQL学习笔记-函数的更多相关文章

  1. MySQL学习笔记——函数

    常用函数 ALTER TABLE tb_emp ); #插入数据 INSERT INTO tb_dept() VALUE(,'市场部','负责市场工作'); # concat 连接 SELECT CO ...

  2. MYSQL学习笔记三:日期和时间函数

    MYSQL学习笔记三:日期和时间函数 1. 获取当前日期的函数和获取当前时间的函数 /*获取当前日期的函数和获取当前时间的函数.将日期以'YYYY-MM-DD'或者'YYYYMMDD'格式返回 */ ...

  3. MySQL学习笔记一

    MySQL 学习笔记 一 一.数据库简单介绍 1. 按照数据库的发展时间顺序,主要出现了以下类型数据库系统: Ø 网状型数据库 Ø 层次型数据库 Ø 关系型数据库 Ø 面向对象数据库 上面4中数据库系 ...

  4. MySQL学习笔记-锁相关话题

    在事务相关话题中,已经提到事务隔离性依靠锁机制实现的.在本篇中围绕着InnoDB与MyISAM锁机制的不同展开,进而描述锁的实现方式,多种锁的概念,以及死锁产生的原因.   Mysql常用存储引擎的锁 ...

  5. MySQL学习笔记-MySQL体系结构总览

    MySQL体系结构总览 不管是用哪种数据库,了解数据库的体系结构都是极为重要的.MySQL体系结构主要由数据库和数据库实例构成. 数据库:物理操作系统文件或者其它文件的集合,在mysql中,数据库文件 ...

  6. 【mysql学习笔记整理】

    /*mysql学习笔记整理*/ /*常用的数据库操作对象*/ #库的操作#创建#数据库的创建USE mysql;CREATE DATABASE db_x;#删除#删除数据库DROP DATABASE ...

  7. 数据库MySQL学习笔记高级篇

    数据库MySQL学习笔记高级篇 写在前面 学习链接:数据库 MySQL 视频教程全集 1. mysql的架构介绍 mysql简介 概述 高级Mysql 完整的mysql优化需要很深的功底,大公司甚至有 ...

  8. 一千行MySQL学习笔记 (转)

    出处:  一千行MySQL学习笔记 /* 启动MySQL */ net start mysql /* 连接与断开服务器 */ mysql -h 地址 -P 端口 -u 用户名 -p 密码 /* 跳过权 ...

  9. MySql学习笔记(一)之DQL常用查询

    MySql学习笔记(一)之DQL常用查询 前言:mysql是中小型的数据库软件,SQL语言分为DDL,DCL,DML,DQL四种,在这里重点讲解DQL的单表查询. 正文:在学习mysql单表查询之前, ...

  10. mysql basic operation,mysql总结,对mysql经常使用语句的详细总结,MySQL学习笔记

    mysql> select * from wifi_data where dev_id like "0023-AABBCCCCBBAA" ; 1.显示数据库列表.show d ...

随机推荐

  1. gRPC repeated数组的使用 python

    reco.proto syntax = "proto3"; package rpc_package; service HelloWorldService { rpc SayHell ...

  2. 力扣627(MySQL)-变更性别(简单)

    题目: Salary 表: 请你编写一个 SQL 查询来交换所有的 'f' 和 'm' (即,将所有 'f' 变为 'm' ,反之亦然),仅使用 单个 update 语句 ,且不产生中间临时表. 注意 ...

  3. 力扣12(java)-整数转罗马数字(中等)

    题目: 罗马数字包含以下七种字符:I, V, X, L, C, D, M 1 字符 数值 2 I 1 3 V 5 4 X 10 5 L 50 6 C 100 7 D 500 8 M 1000 例如, ...

  4. 一首歌的时间,手把手搭建基于FC的网站

    简介: 不是杰伦的那一首歌啦~ 部署网站 说好不哭 在接触serverless架构之前,我们如果想实现上线一个Web网站,就要在开发前期经过操作很多冗杂但又必须的步骤,不少小白可谓是快速的从入门到退坑 ...

  5. 揭秘阿里云神龙团队拿下TPCx-BB排名第一的背后技术

    ​简介:阿里云自主研发的神龙大数据加速引擎获得了TPCx-BB SF3000世界排名第一的成绩. ​ 一  背景介绍 近日,TPC Benchmark Express-BigBench(简称TPCx- ...

  6. 多任务学习模型之ESMM介绍与实现

    ​简介:本文介绍的是阿里巴巴团队发表在 SIGIR'2018 的论文<Entire Space Multi-Task Model: An Effective Approach for Estima ...

  7. k8s七层代理Ingress-nginx-controller

    一.Ingress与Ingress Controller概述 1.1 回顾service四层代理 在 k8s 中为什么要做负载均衡? Pod 漂移问题,可以理解成 Pod IP 是变化的 Kubern ...

  8. k8s控制节点etcd删除并重新加入

    官方参考:https://kubernetes.io/zh-cn/docs/tasks/administer-cluster/configure-upgrade-etcd/ 1.删除etcd节点 cd ...

  9. RT-Thread线程同步与线程通信

    一.线程同步 线程同步的使用场景 例如一项工作中的两个线程:一个线程从传感器中接收数据并且将数据写到共享内存中,同时另一个线程周期性的从共享内存中读取数据并发送去显示,下图描述了两个线程间的数据传递: ...

  10. 004—Orcad创建简单分裂元件

    004-Orcad创建简单分裂元件 以TPS545为例,先查看datasheet,管脚图,PCB封装.新建库,设置名称和part的数量,然后添加管脚,设定管脚属性.电源管脚要勾选Pin Visble. ...