网站地图    收藏   

主页 > 后端 > mysql数据库 >

MYSQL常见运算符和函数

来源:未知    时间:2018-03-12 11:14 作者:小飞侠 阅读:

[导读] 字符函数 (1)CONCAT():字符连接 SELECT CONCAT(‘IMOOC’,’-‘,’MySQL’);//IMOOC-MySQL SELECT CONCAT (first_name,last_name) AS fullname FROM test; (2)CONCAT_WS():使用指定的分隔符进行字符连接,(第一个...

字符函数 

    (1)CONCAT():字符连接 

    SELECT CONCAT(‘IMOOC’,’-‘,’MySQL’);//IMOOC-MySQL 

    SELECT CONCAT (first_name,last_name) AS fullname FROM test; 

    (2)CONCAT_WS():使用指定的分隔符进行字符连接,(第一个位置指定分隔符,后面的为分割的内容) 

    SELECT CONCAT_WS(‘%’,’abc’,’def’); //第一个是指定的分隔符;//abc%def 

    (3)FORMAT():数字格式化 

    SELECT FORMAT(123560.75,2); //123,560.75;第二个参数若为0(四舍五入),显示整数 

    (4)LOWER():转化小写 

    (5)UPPER():转换大写 

    SELECT UPPER(‘mysql’);//MYSQL 

    (6)LEFT():获取左侧字符 

    (7)RIGHT():获取右侧字符 

    SELECT LEFT (‘MYSQL’,2); //MY 

    SELECT LOWER(LEFT(‘mYsql’,2)); //函数嵌套;//my 

    (8)LENGTH():取得字符串长度 

    LENGTH(‘MYSQL ’);//6;最后加了个空格 

    (9)LTRIM():清空字符串前面(左端)空格 

    (10)RTRIM():清空字符串末尾(右端)空格 

    (11)TRIM():删除前导、后续空格或者指定字符 

    SELECT TRIM(’ MySQL ‘); 

    SELECT TRIM(LEADING ‘?’ FROM ‘??MYSQL???’); //删除前导? 

    SELECT TRIM(TRAILING ‘?’ FROM ‘??MYSQL???’); //删除后续? 

    SELECT TRIM(BOTH ‘?’ FROM ‘??MYSQL???’); //前后均删除,但不能删除中间的? 

    (12)REPLACE():替换 

    SELECT REPLACE(‘MY???SQL’,’?’,”); //将问号换成空白,即去掉? 

    SELECT REPLACE(‘MY???SQL’,’?’,’~~’); //可以将n个?换成m个组合符号 

    (13)SUBSTRING():字符串截取(从1开始,编程里可能从0开始) 

    SELECT SUBSTRING(‘mYSQL’,1,2); //从字符串中的第一个位置开始截取2个字符mY 

    SELECT SUBSTRING(‘mYSQL’,3); //SQL 从第3的位置开始截取到结束 

    SELECT SUBSTRING(‘mYSQL’,-2); //QL 从倒数第2位开始截取到结束 

    SELECT SUBSTRING(‘mYSQL’,-3,-1); //F,长度不能是负的,但是有些编程语言支持,而mysql不支持 

    (14)[NOT] LIKE:模式匹配(百分号%代表任意个字符; 下划线_代表任意一个字符) 

    例子:”tom%” 

    SELECT * FROM test WHERE first_name LIKE ‘%1%%’ ESCAPE ‘1’; // 去除’1’后面的编译,查找包含’%’符号的信息 ‘_’任意一个字符


数值运算符函数 

    SELECT CEIL(3.01) ==>4 /*有n.xx 都是n+1 进一取整 向上取整 

    SELECT FLOOR(3.99) ==>3 /*取n.xx 都是n 舍一取整 向下取整 

    SELECT 3 DIV 4 ==> 0 /*整数除法,取商 

    SELECT 3/4 ==>0.75 /*除法 

    SELECT 2.1 MOD 2 ==>0.1 /*取余数(取模) 被除数是整数,小数都可以 

    SELECT 21 % 2 ==>1 /*取余数 mod=% 

    SELECT POWER(3,4) ==>81 /*3的4次方 幂运算 

    SELECT ROUND(3.1415926,4) ==>3.1416 /*四舍五入,保留4位小数 

    SELECT TRUNCATE(123.89,1) ==>123.8 /*截取小数点后的位数 

    SELECT TRUNCATE(123.89,0) ==>123 /*截取小数点后的位置,0位为整数部分 

    SELECT TRUNCATE(123.89,-1) ==>120 /*截取-1,从个位起去掉后面的数值替换为0


比较运算符和函数 

    [NOT]BETWEEN…AND…[不]在范围之内,结果返回1或0。 

    例如:15 BETWEEN 10 AND 16; //1。 

    [NOT]IN()列出值选项。 

    例如:SELECT 10 IN(5,10,25); //1。 

    IS [NOT] NULL:只有NULL IS [NOT] NULL返回1,其他情况(包括”,0)都返回0。

    

日期时间函数 

    (1)SELECT NOW(); // 当前日期时间。 

    (2)SELECT CURDATE(); // 当前日期。 

    (3)SELECT CURTIME(); // 当前时间。 

    (4)SELECT DATE_ADD(‘2014-3-12’,INTERVAL [-]365 DAY); // 2015-03-12,DAY还可以替换为WEEK,MONTH,YEAR等。DATE_ADD不是增加的意思,是变化,既可以增加,也可以减去。 

    (5)DATEDIFF(); // 日期的差值。 

    DATEDIFF(‘2013-3-12’,’2014-3-12’); // -365 日期差值。 

    (6)DATE_FORMAT(); // 日期格式化。 

    SELECT DATE_FORMAT(‘2014-3-2’,’%m%d%Y’); // 03/02/2014(’%’带有前导0作用)。


信息函数 

    SELECT CONNECTION_ID(); ==>2 /*连接ID 

    SELECT DATABASE(); /*当前打开的数据库 

    SELECT LAST_INSERT_ID(); /*最后插入的记录 同时写入多条记录是只返回写入的第一条的id。而且表中必须要有自动编号的字段。 

    DESC tab_name; /*查看数据库字段及属性,查看表结构 

    SELECT USER(); /* 打印当前用户信息 

    SELECT VERSION(); /*打印当前数据库信息


聚合函数 

    只有一个返回值 

    AVG() - 平均值 

    SELECT ROUND(AVG(goods_price),2) AS avg_price FROM tdb_goods; 

    COUNT() - 计数 

    SELECT COUNT(goods_id) as counts FROM tdb_goods; 

    MAX() - 最大值 

    SELECT MAX(goods_price) as counts FROM tdb_goods; 

    MIN() - 最小值 

    SUM() - 求和 

    SELECT SUM(goods_price) as counts FROM tdb_goods;


加密函数 

    MD5():信息摘要算法 

    select md5(’admin’);//给admin加密。如果mysql中的信息是为了web开发做准备,那么尽量使用md5 

    password():密码算法 

    set password=password(‘1236’)修改了当前登录密码为1236

    

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论