1.REPLACE(str,from_str,to_str)


  定义:REPLACE(str,from_str,to_str)

  解释:返回值是把字符串str 中的子串from_str 全部替换为to_str 后得到的一个字符串。如果to_str 是空串,则效果相当于删除所有的from_str。如果from_str 是空串,REPLACE()
     将不对字符串str 做任何改变。如果有参数为NULL,则返回NULL。

  示例:REPLACE('abracadabra','a','oh')   →   'ohbrohcohdohbroh'

     REPLACE('abracadabra','a','')    →   'brcdbr'

     REPLACE('abracadabra','','x')    →   'abracadabra'

     UPDATE sp_employeezzvalidate SET `name` = REPLACE(name,' ','');  //质监项目中应用,将导入的成绩表名字字段中的空格去掉

2.IFNULL(expr1,expr2)


  定义:IFNULL(expr1,expr2)

  解释:若表达式expr1 的值为NULL,则返回expr2;否则,返回expr1。IFNULL()函数将根据自己调用时的上下文决定是返回数字,还是返回字符串。

  示例:IFNULL(NULL,'null')        →    'null'
     IFNULL('not null','null')      →    'not null'

3.NULLIF(expr1,expr2)

  定义:NULLIF(expr1,expr2)

  解释:如果两个表达式的值不相同,返回expr1;若相同,则返回NULL。

  示例:NULLIF(3,4)   →   3
     NULLIF(3,3)   →   NULL

4.CONCAT(str1,str2,...)


  定义:CONCAT(str1,str2,...)

  解释:返回一个由自身所有参数连接而成的字符串;只要有一个参数为NULL,就返回NULL。只要有一个参数是二进制串,结果就是一个二进制串;如果所有参数都是非二进制串,结果就
     是一个非二进制串。数字参数都可以转换为字符串。自MySQL 5.5.3 起,这种转换得到的是非二进制串;那以前的版本,转换结果为二进制串。

  示例:CONCAT('abc','def')       →     'abcdef'

     CONCAT('abc')         →     'abc'

     CONCAT('abc',NULL)       →     NULL

     CONCAT('Hello',', ','goodbye')    →     'Hello, goodbye'

5.CASE [expr] WHEN expr1 THEN result1 ... [ELSE default] END


  定义:CASE [expr] WHEN expr1 THEN result1 ... [ELSE default] END

  解释:当第一个表达式expr 存在时,CASE 就会把它与每一个WHEN 后面的表达式进行比较。对于第一个相等的表达式,与之相应的那个THEN 值会成为计算结果。这特别适用于需要把一     个给定值与一组值进行比较的情况。

     CASE 0 WHEN 1 THEN 'T' WHEN 0 THEN 'F' END   →   'F'
     CASE 'F' WHEN 'T' THEN 1 WHEN 'F' THEN 0 END    →   0

     当第一个表达式expr 不存在时,CASE 将计算WHEN 表达式。对于第一个结果为真(非零,非NULL)的表达式,与之相应的THEN 值会成为计算结果。这特别适用于需要判断“不等
     于”关系或者需要对任意条件进行测试的场合。

     CASE WHEN 1=0 THEN 'absurd' WHEN 1=1 THEN 'obvious' END  →   'obvious'

     select a.PRO_NAME '申报工程名称',
     a.DESIGN_INVEST_COST '投资额(万元)',

     case when b.TelecomType = 'YD' THEN '移动'
     when b.TelecomType = 'TT' THEN '铁塔'
     when b.TelecomType = 'DX' THEN '电信'
     ELSE '联通' END '通信类型' 

     from zj_report_higher a,sp_enterprise b where a.CREATE_BY_CO = b.ID AND a.PROVINCE = 22;  //质监项目中应用,将导入的成绩表名字字段中的空格去掉

6.IS NULL&IS NOT NULL


  定义:expr IS NULL

      expr IS NOT NULL

  示例:select * from sp_employee;  →  328389条记录

     select * from sp_employee where GYSExamOkCode is null;  →  286042条记录

     select * from sp_employee where GYSExamOkCode is not null;  →  42347条记录

7.FLOOR(x)


  定义:FLOOR(x)

  解释:返回不大于x 的最大整数。如果参数x 是某种精确数值类型的,返回值也将有着同样的类型;否则,返回值将有着某种浮点(近似)数值类型,即使此函数的返回值没有小数部分。

  示例:FLOOR(3.8)   →   3
     FLOOR(-3.8)    →   -4

8.CEILING(x)


  定义:CEILING(x)||CEIL(x)

  解释:返回不小于x 的最小整数。如果参数x 是某种精确数值类型的,返回值也将有着同样的类型。否则,返回值将有着某种浮点(近似)数值类型。即使此函数的返回值没有小数部分,
     也是如此。

  示例:CEILING(3.8)   →   4
     CEILING(-3.8)    →   -3

9.ROUND(x)&ROUND(x,d)


  定义:ROUND(x)&ROUND(x,d)

  解释:ROUND()函数将返回x 的值,但只保留到小数点后面的d 位数字。如果d 等于零或没有给出,结果将没有小数点或小数部分。此函数的返回值和它的第一个参数有着同样的数值类       型,所以如果该参数是一个整数的话,返回结果将没有任何小数部分。以字符串形式给出的数值将先转换为双精度浮点数,再进行舍入处理。

  示例:ROUND(15.3) → 15
     ROUND(15.5) → 16
     ROUND(-33.27834,2) → -33.28
     ROUND(1,4) → 1
     ROUND('1',4) → 1.0000

  解释:如果d 是一个负数,那么ROUND()函数会去掉小数部分,把从小数点开始往左算起的ABS(d)位数字设置为零。

  示例:ROUND(123456,-2) → 123500

  注意:对于精确值数值,大于或等于0.5 的小数部分将按远离零的方向舍入。小于0.5 的小数部分将按接近零的方向舍入。例如,1.5 和−1.5 将被分别舍入为2 和−2,而1.49 和−1.49 将被舍
     入为1 和−1。

     ROUND(1.5) →2

     ROUND(1.49) →1

10.TRUNCATE(x,d)


  定义:TRUNCATE(x,d)

  解释:返回小数部分被截短为d 位数字的x 值。如果d 等于0,返回值里将不包含小数点和小数部分。如果d 大于x 的小数位数,x 的小数部分将用0 来补足到指定的位数。

  示例:TRUNCATE(1.23,1) → 1.2
     TRUNCATE(1.23,0) → 1
     TRUNCATE(1.23,4) → 1.2300

  解释:如果d 是负数,TRUNCATE()会去掉小数部分,把小数点左边的ABS(d)个数变为0。

  示例:TRUNCATE(123456.789,-3) → 123000

11.LENGTH(str)


  定义:LENGTH(str)

  解释:返回字符串str 的长度,以字节为单位。多字节字符长度大于1。如果要确定字符长度,可以使用CHAR_LENGTH()

  示例:LENGTH('abc') → 3
     LENGTH(CONVERT('abc' USING ucs2)) → 6
     LENGTH('') → 0
     LENGTH(NULL) → NULL

12.LOWER(str)


  定义:LOWER(str)

  解释:返回把字符串str 里的字符全都转换为小写字母后得到的一个字符串;如果str 为NULL,则返回NULL。

  示例:LOWER('New York, NY') → 'new york, ny'
     LOWER(NULL) → NULL

13.UPPER(str)


  定义:UPPER(str)

  解释:返回把字符串str 里的字符全都转换为大写字母后得到的一个字符串;如果str 为NULL,则返回NULL。

  示例:UPPER('New York, NY') → 'NEW YORK, NY'
     UPPER(NULL) → NULL

MySQL_函数(待续)的更多相关文章

  1. mysql_函数

    MySQL 函数 (http://www.cnblogs.com/chenpi/p/5137178.html) 1.什么是函数 mysql中的函数与存储过程类似,都是一组SQL集: 2.与存储过程的区 ...

  2. [独孤九剑]Oracle知识点梳理(十)%type与%rowtype及常用函数

    本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...

  3. PHP代码优化

    1 代码优化 1 尽量静态化 如果一个方法能被静态,那就声明它为静态的,速度可提高1/4,甚至我测试的时候,这个提高了近三倍. 当然了,这个测试方法需要在十万级以上次执行,效果才明显. 其实静态方法和 ...

  4. IIS7 IIS8 中多个版本php共存的方法

    原文地址: https://blog.cozof.com/pieces/54.shtml 最近又重回.net,用回IIS.然后用到某个php开源项目,需要低版本的php,之前装的一个php5.5不能用 ...

  5. php注意事项

    1. 不要使用mysql_函数 这一天终于来了,从此你不仅仅"不应该"使用mysql_函数.PHP 7 已经把它们从核心中全部移除了,也就是说你需要迁移到好得多的mysqli_函数 ...

  6. matlab中textread

    今天打算跑下程序,突然发现,真的很烂,不会读入数据,简单的Iris.txt一上午都没读进去,在此对matlab中的textread函数做下总结,textscan函数待续. 本文主要内容引自http:/ ...

  7. 10件在PHP 7中不要做的事情

    刚刚在园子里看到一篇特别好的文章,就拿到我的园子里分享了. 1. 不要使用mysql_函数 这一天终于来了,从此你不仅仅“不应该”使用mysql_函数.PHP 7 已经把它们从核心中全部移除了,也就是 ...

  8. 10 件在 PHP 7 中不要做的事情

    1. 不要使用mysql_函数 这一天终于来了,从此你不仅仅"不应该"使用mysql_函数.PHP 7 已经把它们从核心中全部移除了,也就是说你需要迁移到好得多的mysqli_函数 ...

  9. 节点插入--对比jQuery和JavaScript方法(一)

    二.插入元素: 1 <div> 2 <p>面朝大海,春暖花开</p> 3 </div> (一).jQuery方法 1.在节点内部插入: 方法 说明 ap ...

随机推荐

  1. python成长之路二

    python的print格式化输出,以及使用format来控制. 1,打印字符串(str),利用%s. >>> print ('My name is %s' % ('TaoXiao' ...

  2. P1064 金明的预算方案

    思路:就是一个背包问题  因为数据范围小,所以不把 1个带附着物的东西 拆成 带1个带2个或不带 #include<bits/stdc++.h> using namespace std; ...

  3. P1403 [AHOI2005]约数研究

    原题链接 https://www.luogu.org/problemnew/show/P1403 这个好难啊,求约数和一般的套路就是求1--n所有的约数再一一求和,求约数又要用for循环来判断.... ...

  4. Codeforces Round #471 (Div. 2) F. Heaps(dp)

    题意 给定一棵以 \(1\) 号点为根的树.若满足以下条件,则认为节点 \(p\) 处有一个 \(k\) 叉高度为 \(m\) 的堆: 若 \(m = 1\) ,则 \(p\) 本身就是一个 \(k\ ...

  5. 自学Python4.3-装饰器固定格式

    自学Python之路-Python基础+模块+面向对象自学Python之路-Python网络编程自学Python之路-Python并发编程+数据库+前端自学Python之路-django 自学Pyth ...

  6. 【BZOJ5292】[BJOI2018]治疗之雨(高斯消元)

    [BZOJ5292][BJOI2018]治疗之雨(高斯消元) 题面 BZOJ 洛谷 题解 设\(f[i]\)表示剩余\(i\)点生命时的期望死亡的次数. 考虑打\(k\)次下来脸上被打了\(i\)下的 ...

  7. 【CF850E】Random Elections(FWT)

    [CF850E]Random Elections(FWT) 题面 洛谷 CF 题解 看懂题就是一眼题了... 显然三个人是等价的,所以只需要考虑一个人赢了另外两个人就好了. 那么在赢另外两个人的过程中 ...

  8. Codeforces | CF1029F 【Multicolored Markers】

    这道题其实难度应该小于紫题...除了一点小特判以外没什么难度...\(\leq50\)行代码即可\(AC\)此题 题目大意:给定两个数\(a,b(1\leq a,b\leq 10^{14})\)分别表 ...

  9. ⌈洛谷4735⌋⌈BZOJ3261⌋最大异或和【可持久化01Trie】

    题目链接 [BZOJ传送门] [洛谷传送门] 题解 终于学会了可持久化trie树了.感觉并不是特别的难. 因为可持久化,那么我们就考虑动态开点的trie树. 都知道异或操作是有传递性的,那么我们就维护 ...

  10. LOJ#6278. 数列分块入门 2

    在一个区间上进行操作,一种操作是某个小区间都加上c,另一个查找这个区间内大于c*c的数 我们可以另外开一个数组在保存a中的每个分块内的相对值,然后每次对a加值,并把a的值赋给b,不同的是b内的各个分块 ...