欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

SQL 语句中 “意想不到” 的操作

程序员文章站 2022-03-09 11:26:36
...

一、 sql 中字符串截取的函数

原文链接:https://www.cnblogs.com/duanc/archive/2018/04/09/8760372.html

1、LEFT( createDate, 10 ) 从左边截取到第十个字符串

注意:起始位置的下标为 1 开始
如下图所示,有的时候我们想要的时间是年月日,而不需要时分秒。
SQL 语句中 “意想不到” 的操作

SELECT LEFT
	( createDate, 10 ) 
FROM
	`joblevel`

结果如下:
SQL 语句中 “意想不到” 的操作
 
 
 

2、RIGHT( createDate, 8 ) 从右边截取到第八个字符串

SELECT RIGHT
	( createDate, 8 ) 
FROM
	`joblevel`

SQL 语句中 “意想不到” 的操作
 
 
 

3、SUBSTRING(name,5,3) 截取name这个字段 从第五个字符开始 只截取之后的3个字符

注意 : 含头不含尾

SELECT SUBSTRING('成都融资事业部',5,3)

结果:事业部

 
 
 

4、SUBSTRING(name,3) 截取name这个字段 从第三个字符开始,之后的所有个字符

SELECT SUBSTRING('成都融资事业部',3)

结果:融资事业部



5、SUBSTRING(name, -4) 截取name这个字段的第 4 个字符位置(倒数)开始取,直到结束

SELECT SUBSTRING('成都融资事业部',-4)

结果:资事业部



6、SUBSTRING(name, -4,2) 截取name这个字段的第 4 个字符位置(倒数)开始取,只截取之后的2个字符

SELECT SUBSTRING('成都融资事业部',-4,2)

结果:资事

注意:我们注意到在函数 substring(str,pos, len)中, pos 可以是负值,但 len 不能取负值。



7、substring_index(‘www.baidu.com’, ‘.’, 2) 截取第二个 ‘.’ 之前的所有字符

SELECT substring_index('www.baidu.com', '.', 2)

结果:www.baidu



8、substring_index(‘www.baidu.com’, ‘.’, -2) 截取第二个 ‘.’ (倒数)之后的所有字符

SELECT substring_index('www.baidu.com', '.', -2)

结果:baidu.com



9、SUBSTR(name, 1, CHAR_LENGTH(name)-3) 截取name字段,取除name字段后三位的所有字符

SELECT SUBSTR('成都融资事业部', 1, CHAR_LENGTH('成都融资事业部')-3) 

结果:成都融资

SQL 语句中 “意想不到” 的操作

二、sql 语句中保留小数

 

1、ROUND() 函数

查询前:
SQL 语句中 “意想不到” 的操作
保留一位小数

SELECT ROUND(contractTerm,1) FROM `employee`

查询后:
SQL 语句中 “意想不到” 的操作

SQL 语句中 “意想不到” 的操作

三、sql语句中的 Null 函数

1、ISNULL() 函数

ISNULL

使用指定的替换值替换 NULL。

语法

ISNULL ( check_expression , replacement_value )

参数
check_expression

将被检查是否为 NULL的表达式。check_expression 可以是任何类型的。

replacement_value

check_expression 为 NULL时将返回的表达式。replacement_value必须与 check_expresssion 具有相同的类型。

返回类型
返回与 check_expression 相同的类型。

注释
如果 check_expression 不为 NULL,那么返回该表达式的值;否则返回 replacement_value

 

原文: https://www.cnblogs.com/xiaowie/p/8675092.html

 
 
 

2. IFNULL() 函数

博客内容:https://www.runoob.com/mysql/mysql-func-ifnull.html
 

IFNULL() 函数用于判断第一个表达式是否为 NULL,如果为 NULL 则返回第二个参数的值,如果不为 NULL 则返回第一个参数的值。

IFNULL() 函数语法格式为:

IFNULL(expression, alt_value)

如果第一个参数的表达式 expression 为 NULL,则返回第二个参数的备用值。

参数 描述
expression 必须,要测试的值
alt_value 必须,expression 表达式为 NULL 时返回的值

MySQL中的ISNULL和IFNULL有区别:
ISNULL() 只是用来判断是否为空,不能实现替换功能;而 IFNULL() 不仅可以用来判断是否为空,还可以实现替换功能。

相关标签: mysql java