字符运算符
CONCAT()字符连接
CONCAT_WS()使用指定的分隔符进行字符连接
FORMAT()数字格式化
LOWER()UPPER()转换成小/大写字母
LEFT() RIGHT()获取左/右侧字符
LENGTH()获取字符串长度
SUBSTRING()字符串截取
[NOT] LIKE 模式匹配
REPLACE()字符串替换
数值运算符与函数
CEIL() 进一取整
DIV 整数除法
FLOOR()舍一取整
MOD 取余数
POWER() 幂运算
ROUND()四舍五入
比较运算符与函数
[NOT] BETWEEN...AND... [NOT]IN() IS[NOT]NULL
信息函数
CONNECTION_ID() 连接id
DATEBASE()当前数据库
LAST_INSERT_ID()最后插入记录的Id号
USER()当前用户
VERSON()版本信息
聚合函数
AVG()平均值
COUNT()计数
MAX()
MIN()
SUM()
加密函数
MD5()信息摘要算法
PASSWORD()密码算法
子查询和连接
将查询结果写入数据表
INSERT[INTO] tbl_name[(col_name,...)] SELECT...
例子:INSERT tdb_goods(cate_name) SELECT good_cake FORM table GROUP BY good_cake;
多表更新
UPDATE table1 INNER JOIN table2 ON table1_name=table2_name SET table1_id=table2_di;
CREATE...SELECT
创建数据表同时将查询结果写入到数据表
CREATE TABLE table_name [(create_definine)] select_statement
例:CREATE TABLE table1(
id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(20) NOT NULL)
SELECT SELECT good_cake FORM table GROUP BY good_cake;
)
存储引擎
通过修改MySQL配置文件实现
1)-ddfault-storage-engine=engine
2)通过创建数据表命令实现
CREATE TABLE[IF NOT EXISTS]table_name(
age1 TINYINT UNSGINED(无符号位) NOT NULL,
age2 TINYINT UNSGINED(无符号位) NULL,//默认是可以为空
......
)ENGINE=engine;
通过修改数据表命令实现
-ALTER TABLE table_name ENGINE[=]engine_name;
存储引擎
MyISAM:存储现在可达256TB,支持索引。表级锁定,数据压缩
InnoDB:存储限制为64TB,支持事务和索引。锁颗粒为行锁