运算符
1.算数运算符
加(+):mysql> SELECT 1+1;
减(-):mysql> SELECT 3-2;
乘(*):mysql> SELECT 2*3;
除(/):mysql> SELECT 5/3;
商(DIV):mysql> SELECT 5 DIV 2;
模(%或MOD()):mysql> SELECT 5%2 或 mysql> SELECT MOD(5,2);
2.比较运算符
等于(=):mysql> SELECT 1=0;
不等于(!=或<>):mysql> SELECT 1<>0;
安全等于(<=>):mysql> SELECT 1<=>1;
小于(<):mysql> SELECT ‘a’<’b’;
小于等于(<=):mysql> SELECT ‘abc’<=’a’;
大于(>):mysql> SELECT ‘a’>’b’;
大于等于(>=):mysql> SELECT ‘a’>=’b’;
BETWEEN:mysql> SELECT 10 between 10 and 20;
IN:mysql> SELECT 1 in (1,2,3);
IS NULL:mysql> SELECT 0 IS NULL;
IS NOT NULL:mysql> SELECT 0 IS NOT NULL;
LIKE:mysql> SELECT 123456 LIKE ‘123%’;
REGEXP:mysql> SELECT ‘abcdef’ REGEXP ‘ab’;
3.逻辑运算符
非(NOT 或 !):
mysql> SELECT NOT 0,NOT 1,NOT NULL;
mysql> SELECT !0, !1, !NULL;
与(AND 或 &&):
mysql> SELECT (1 AND 1), (0 AND 1), (3 AND 1), (1 AND NULL);
mysql> SELECT (1 && 1), (0 && 1), (3 && 1), (1 && NULL);
或(OR或 ||):
mysql> SELECT (1 OR 0), (0 OR 0), (1 OR NULL), (1 OR 1), (NULL OR NULL);
mysql> SELECT (1 || 0), (0 || 0), (1 || NULL), (1 || 1), (NULL || NULL);
异或(XOR 或 ^):
mysql> SELECT (1 XOR 1), (0 XOR 0), (1 XOR 0), (0 XOR 1), (NULL XOR 1);
mysql> SELECT (1 ^ 1), (0 ^ 0), (1 ^ 0), (0 ^ 1), (NULL ^ 1);
4.位运算符
位与(&):
mysql> SELECT 2&3;
mysql> SELECT 2&3&4;
位或(|)
mysql> SELECT 2|3;
位异或(^)
mysql> SELECT 2^3;
位取反(~)
mysql> SELECT ~1,~18446744073709551614;
位右移(>>)
mysql> SELECT 100>>3;
位左移(<<)
mysql> SELECT 100<<3;
5.运算符优先级顺序
最高优先级:=
01. ||, OR, XOR
02. &&, AND
03. BETWEEN, CASE, WHEN, THEN, ELSE
04. =, <=>, >=, >, <=, <, <>, !=, IS, LIKE, REGEXP, IN
05. |
06. &
07. <<, >>
08. -, +
09. *, /, DIV, %, MOD
10. ^
11. - (unary minus), ~ (unary bit inversion)
12. !, NOT
最低优先级:BINARY, COLLATE
函数
1.字符函数:
|
SELECT CONCAT(employee_id,',',first_name) from employees; --在数据库中将不同的字符连接在一起;
SELECT CONCAT_WS('|',employee_id,first_name) FROM employees; --以我们制定的格式给用户显示出来;
SELECT FORMAT(1200000,2); --数字格式化;
SELECT LOWER("LLLLAAAaaaSSss"); --将所有的字母转换为小写;
SELECT LOWER("LLLLAAAaaaSSss"); --将所有的字母转换为大写;
SELECT LEFT('Mysql',2); --获取左侧字符
SELECT RIGHT('Mysql',3); --获取右侧字符
SELECT LENGTH(“tom") --获取字符串长度
SELECT TRIM(“tom ") --删除前后空格
SELECT SUBSTRING("Mysql",1,2) --字符串截取,表示从第一个截取 截取两个(在程序中从第0开始,在MySql中从第一个开始)
SELECT REPLACE("!!My!!Sql!!","!","") --字符串替换
SELECT * FROM employees WHERE first_name LIKE '%Y%'; --模式匹配
|
2.数值运算符和函数:
|
SELECT CEIL(3.01);
SELECT FLOOR(3.99);
SELECT 4 DIV 3;
SELECT 5 MOD 2;
SELECT ROUND(3.52);
SELECT POWER(3,3);
SELECT TRUNCATE(188.099,2);
|
3.比较运算符和函数:
|
SELECT 25 BETWEEN 1 AND 25; --表示是否在两个数之间 1代表为真,0代表为假 |
4.日期时间函数:
|
SELECT NOW();
SELECT CURDATE();
SELECT CURTIME();
SELECT DATE_ADD('2014-11-09',INTERVAL 10 MONTH); --可以进行年月日星期都可以
SELECT DATEDIFF('2015-11-11','2011-11-01');
SELECT DATE_FORMAT('2015-11-11','%Y/%m/%d');
|
5.MySql信息函数:
|
SELECT CONNECTION_ID();
SELECT datebase();
SELECT LAST_INSERT_ID();
SELECT USER();
SELECT VERSION();
|
6.聚合函数:
|
SELECT AVG(salary) FROM employees;
select count(salary) from employees;
|
7.加密函数:
|
SELECT MD5("12356");
SELECT PASSWORD("admin")
|