day7-mysql函数

news/2024/7/2 20:20:52

MySQL 字符串函数

CONCAT

字符串 s1,s2 等多个字符串合并为一个字符串

select CONCAT('中国',t.userfrom,city) from newsp_201_user t;

FORMAT

函数可以将数字字段进行格式化 "#,###.##", 将数字字段保留到小数点后 n 位,最后一位四舍五入。

SELECT FORMAT(250500.5634, 2);     -- 输出 250,500.56

LCASE、UCASE

将字符串的所有字母变成小写字母,UCASE是转成大写

SELECT LCASE('RUNOOB') -- runoob

LEFT

返回字段的前 n 个字符

SELECT LEFT('runoob',2) -- ru

MID

从字符串 s 的 start 位置截取长度为 length 的子字符串,同 substring功能一样

SELECT MID("RUNOOB", 2, 3) AS ExtractString; -- UNO

REPLACE

字符串 abc 中的字符 a 替换为字符 x

SELECT REPLACE('abc','a','x') --xbc

TRIM

去掉前后空格

SELECT TRIM('    RUNOOB    ') AS TrimmedString;

 

MySQL 数字函数

ABS

返回绝对值

SELECT ABS(-1) -- 返回 1

AVG / COUNT / MIN / MAX / SUM

TRUNCATE

返回数值保留到小数点后 3 位的值(与 ROUND 最大的区别是不会进行四舍五入)

SELECT TRUNCATE(1.23456,3) -- 1.234

 

MySQL 时间函数

ADDDATE / DATE_ADD

计算起始日期 d 加上 n 天的日期

SELECT ADDDATE("2017-06-15", INTERVAL 10 DAY);    -- 2017-06-25
SELECT ADDDATE('2011-11-11 11:11:11', INTERVAL 5 MINUTE)

ADDTIME

 时间 t 加上 n 秒的时间

SELECT ADDTIME('2011-11-11 11:11:11', 5)  -- 2011-11-11 11:11:16 (秒)

 CURDATE和CURRENT_DATE

返回当前日期

SELECT CURDATE();   --  2018-09-19

CURTIME和CURRENT_TIME

返回当前时间

SELECT CURRENT_TIME();

 DATEDIFF

时间相差天数

SELECT DATEDIFF('2001-01-01','2001-02-02')    --  -32

DATE_FORMAT

时间格式化

SELECT DATE_FORMAT('2011-11-11 11:11:11','%Y-%m-%d %r')

DATE_SUB / SUBDATE

函数从日期减去指定的时间间隔

SELECT OrderId,DATE_SUB(OrderDate,INTERVAL 2 DAY) AS OrderPayDate FROM Orders

NOW / SYSDATE

当前时间

select now();

TO_DAYS

计算日期 d 距离 0000 年 1 月 1 日的天数

SELECT TO_DAYS('1901-01-01 01:01:01')

 

MySQL高级函数

IFNULL

select user_name,IFNULL(email,"abc@163.com") from newsp_201_user;

ISNULL

select user_name,ISNULL(email) from newsp_201_user 

注意:在查询字段的时候,MySQL 中处理 NULL 使用 IS NULL 和 IS NOT NULL 运算符

IF

如果表达式 expr 成立,返回结果 v1;否则,返回结果 v2。

SELECT IF(sex = 0,'男','女')    

 

  其他函数请参照:https://www.runoob.com/mysql/mysql-functions.html

 

转载于:https://www.cnblogs.com/lisglg/p/10951949.html


http://www.niftyadmin.cn/n/3459263.html

相关文章

EXEC SP_EXECUTESQL 和EXEC (@SQL) 不能在Function中使用

EXEC SP_EXECUTESQL SQL,SQL_RTN_PARAMS,OUT_ICOUNTICOUNT OUTPUT EXEC (SQL) 这两个函数不能在Function中调用,即使成功建立了, 运行时也报如下错误: 関数内から実行できるのは関数と一部の拡張ストアド プロシージ…

LeetCode 622——设计循环队列

1. 题目 设计你的循环队列实现。 循环队列是一种线性数据结构,其操作表现基于 FIFO(先进先出)原则并且队尾被连接在队首之后以形成一个循环。它也被称为“环形缓冲器”。 循环队列的一个好处是我们可以利用这个队列之前用过的空间。在一个普通…

你用过不写代码就能完成一个简单模块的组件么?

开篇四连问你是否懒得写普通的增删改查方法?你是否不喜欢代码生成插件的重复代码?你是否渴望一个没有冗余代码的项目?你是否渴望一行代码都不用写就能完成一个简单的模块?组件由来作为后端程序员,相信大家都写过以下几种代码&…

C++线程编程-FP编程和CSP编程

FP /*** 使用操作同步来简化代码 - 带有future的函数式编程(FP)* * 才有函数式的方法来编写程序,并非直接在线程之间共享数据;* 而是每个任务都可以提供它所需要的数据,并通过使用future将结果传播至需要它的线程* * …

冲刺2-1

团队开会总结上一阶段的失败之处, 也把第二阶段要完成的任务分配 大屏的空教室展示,课表的录入 转载于:https://www.cnblogs.com/1983185414xpl/p/11066618.html

入侵检测 - AIDE高级入侵检测平台

2019独角兽企业重金招聘Python工程师标准>>> AIDE(Advanced Intrusion Detection Environment)是一款针对文件和目录进行完整性对比检查的程序,它被开发成Tripwire的一个替代品。 AIDE如何工作 这款工具年纪也不小了,相对来同类工具Tripwire说…

C++线程编程-内存顺序

内存顺序模型 有六种内存顺序选项可以应用到原子类型上, memory_order_relaxed;memory_order_consume; memory_order_acquire;memory_order_release;memory_order_acq_rel; memory_order_seq_cst; 它们代表三种模型: 顺序一致 memory_order_seq_cst;获…

看源码,我为什么推荐IDEA?

1.条件断点 看源码的时候,经常遇到这个情况,源码中有个for循环,关键是这个list的size有时候长达数百个.但是我们只想debug一种情况.肥朝就曾经见过,在for循环中打了断点,一直按跳过,按了数十下之后.才找到自己想debug的值.这样效率不高 比如下文这个 1Test2public void testLis…