一、MySQL中的运算符
1、算数运算符
SELECT 算式 #就可以计算
2、比较运算符 # 返回值只能为真(1)或假(0)
= >< != <=>
IS NULL | IS NOT NULL
BETWEEN AND | NOT BETWEEN
IN | NOT IN
LIKE | NOT LIKE
REGEXP
3、逻辑运算符
&& | AND
|| | OR
! | NOT
XOR # 不同时为真
二、数学函数库
用法示意:
SELECT CEIL(salary) FROM users;
其余的也差不多这么用
三、字符串函数库
四、日期时间函数
五、条件函数和判断函数
(1)IF (EXRP,V1,V2)
#如果表达式EXPR成立,则返回V1,否则返回V2
SELECT id,score IF(score>60,'及格','不及格')
FROM student ;
(2)IFNULL(V1,V2)
#如果V1的不为空,就显示V1,否则返回V2
SELECT id,username,age IF NULL(age,'100')
FROM student;
(3)CASE WHEN exp1 THEN v1[WHEN exp2 THEN v2]
[ELSE vn ] END
# CASE 表示函数开始,END表示结束。 如果表达式
exp1成立则返回v1,如果exp2成立,则返回v2。依
此类推,遇到ELSE时,返回vn的值。
# 比如可以用来返回成绩的等级
六、其它常用函数
MDS(str) 信息摘要算法
PASSWORD(str)密码算法
ENCODE(str.pwd_str) 加密结果是一二进制数
DECODE(crypt_str.pwd_str) 通过对ENCODE 加密
七、索引的使用
(1)索引提高对表中数据的查询速度
(2)类型
普通索引、唯一索引(主键,UNIQUE)
全文索引、单列索引(一个字段上的索引)
多列索引、空间索引
(3)创建索引(索引在字段上)
1、建表的时候
--创建普通索引
INDEX in_id(id),
KEY in_username(username)
--创建唯一索引
UNIQUE KEY uni_card(card)
--多列索引
INDEX mul_t1_t2_t3(test1,test2,test3)
--空间索引
SPATIAL INDEX spa_test(test) # 存储引擎应为MYSAM
--删除索引
DROP INDEX 索引名称 ON tb_name
2、已存在表的基础上
CREATE [UNIQUE] IDEX 索引名称 ON 表名(字段名称);
ALTER TABLE tb_name ADD [] INDEX 索引名称(字段名称);
#栗子
ALTER TABLE test4 ADD INDEX in_username(username)
# 可用SHOW CREATE TABLE tb_name; 查看索引
3、建立原则
在经常需要排序查询等操作的字段上建立。