基础函数

数据库提供很多基础函数,类似java提供api

模糊查询

LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式。

可以和通配符 (%、_)配合使用,其中 “%” 表示0或多个任意的字符。“_” 表示一个任意的字符。

查询emp表中姓名中包含"涛"字的员工,显示员工姓名

mysql 函数循环怎么用 mysql函数for循环_java


查询emp表中姓名中以"刘"字开头的员工,显示员工姓名。

mysql 函数循环怎么用 mysql函数for循环_mysql_02


查询emp表中姓名以"刘"开头,并且姓名为两个字的员工,显示员工姓名

mysql 函数循环怎么用 mysql函数for循环_mysql 函数循环怎么用_03

lower & upper 变小写和变大写

length 长度

SELECT ename ,UPPER(ename),LOWER(ename) ,LENGTH(ename)FROM emp;

mysql 函数循环怎么用 mysql函数for循环_数据库_04

substr 子串,截串

#获取ename第一个字母
#说明:有3个参数,参数1:要截取字符串,
#参数2:从哪个位置开始。java是从0,mysql是从1
#参数3:截取长度

SELECT ename,SUBSTR(ename,1,1) FROM emp

mysql 函数循环怎么用 mysql函数for循环_mysql_05

concat 拼串

SELECT * FROM dept
目标案例:accounting(一区)

mysql 函数循环怎么用 mysql函数for循环_java_06


SELECT CONCAT ( dname , ‘(’ , loc , ‘)’ ) FROM dept;

mysql 函数循环怎么用 mysql函数for循环_mysql 函数循环怎么用_07

综合案例 :dname 列 首字母大写

mysql 函数循环怎么用 mysql函数for循环_mysql 函数循环怎么用_08

思路:获取dname第一个字母,截串
获取从dname第二个字母值,最后,截串
第一个字母变大写
把两个字符串拼接起来

SELECT CONCAT(
UPPER(SUBSTR(dname,1,1)), 
SUBSTR(dname,2,LENGTH(dname))
) FROM dept

mysql 函数循环怎么用 mysql函数for循环_数据库_09

综合案例 :将学生信息表中所有姓“刘”的改为姓“牛”的

mysql 函数循环怎么用 mysql函数for循环_字符串_10

  • 所有字段都替换
UPDATE students SET sname=REPLACE(sname,'刘','牛') WHERE sname LIKE '刘%'

mysql 函数循环怎么用 mysql函数for循环_字符串_11

  • 只更改首字母
UPDATE students SET sname=CONCAT('牛',SUBSTR(sname,2,LENGTH(sname)))WHERE sname LIKE '刘%'

mysql 函数循环怎么用 mysql函数for循环_mysql 函数循环怎么用_12

replace 替换

需求:loc区替换区域

SELECT loc,REPLACE (loc,'区','区域') FROM dept;

mysql 函数循环怎么用 mysql函数for循环_数据库_13

round & ceil & floor

ROUND 四舍五入,CEIL 向上取整,FLOOR 向下取整

SELECT comm,ROUND(comm),CEIL(comm),FLOOR(comm) FROM emp;

mysql 函数循环怎么用 mysql函数for循环_字符串_14

UUID 唯一值,36字符串,做主键,分布式

SELECT UUID();

mysql 函数循环怎么用 mysql函数for循环_数据库_15

日期函数

NOW 当前日期

SELECT NOW()
SELECT CURRENT_DATE()  
SELECT CURRENT_TIME()

mysql 函数循环怎么用 mysql函数for循环_java_16

LAST_DAY 2月28,29,30,31 每月最大日期

SELECT hiredate,LAST_DAY(hiredate) FROM emp

mysql 函数循环怎么用 mysql函数for循环_mysql 函数循环怎么用_17

year & month & day

SELECT hiredate,
YEAR(hiredate),MONTH(hiredate),DAY(hiredate) FROM emp

mysql 函数循环怎么用 mysql函数for循环_java_18

DATE_FORMAT 日期转字符串,注意格式的大小写

%Y-%m-%d %H:%i:%s

%Y格式,Y4位年,y2位年
%m月份,%d日,%H 24小时,h12小时,%i分钟,%s秒

SELECT NOW(),
DATE_FORMAT(NOW(),'%Y年%m月%d日 %H小时%i分%s秒')

mysql 函数循环怎么用 mysql函数for循环_数据库_19

STR_TO_DATE 字符串转日期

SELECT YEAR(STR_TO_DATE('2020-10-09','%Y-%m-%d'))

mysql 函数循环怎么用 mysql函数for循环_数据库_20

另外

mysql 函数循环怎么用 mysql函数for循环_java_21

聚合函数:

多行函数也叫做聚合(聚集)函数,根据某一列或所有列进行统计。

mysql 函数循环怎么用 mysql函数for循环_java_22

提示

  1. 多行函数不能用在where子句中
  2. 多行函数和是否分组有关,分组与否会直接影响多行函数的执行结果。
  3. 多行函数在统计时会对null进行过滤,直接将null丢弃,不参与统计。