MySQL
数据库操作
USE
ALTER
CREATE
DROP
基础操作
CRUD
增(Create)
INSERT INTO table_name
(field_name)
VALUE
(field_value)
查(Retrieve)
SELECT field_name
FROM table_name
WHERE field_name = field_value
改(Update)
UPDATE table. Name
SET field_name = field_value
WHERE field_name = field_value
删(Delete)
DELETE
FROM table_name
WHERE field_name = field_value
其他关键字
取名AS
去重DISTINCT
SELECT DISTINCT field_name FROM table_name;
AND & OR
排序ORDER BY
SELECT field_name
FROM table_name
ORDER BY field_name ASC(升序)
/* ORDER BY field_name DESC(降序)
分组GROUP BY
SELECT field_name
FROM table_name
GROUP BY field_name
HAVING
在GROUP BY下面使用
WHERE不能对聚合函数操作
LIMIT
LIMIT 起始值,每页大小
JOIN
INNER JOIN 并集
LEFT JOIN 返回左表所有行
RIGHT JOIN 返回右表所有行
常用函数
ABS() 返回绝对值
CEILING() 向上取整 FLOOR() 向下取整
RAND() 返回0-1直接的随机数
CHAR_LENGTH() 返回字符串长度
REPLACE() 替换
REVERSE() 反转
INSTR() 返回子串第一次出现的索引
LOWER() UPPER() 大小写转换
CURRENT_DATE NOW() LOCALTIME() 时间
聚合函数
COUNT()
COUNT(field_name) 忽略值为NULL的行
COUNT(*) 不忽略值为NULL的行,计算行数
COUNT(1) 不忽略值为NULL的行,计算行数
SUM()
AVG()
MAX()
MIN()
索引
索引是帮助MySQL高效获取数据的数据结构。
CREATE INDEX indexName ON table_name (field_name)
ALTER table table_name ADD INDEX index_name(field_name)
索引分类
-
主键索引(PRIMARY KEY)
- 唯一的标识,主键不可重复,只能有一个列作为主键
-
唯一索引(UNIQUE KEY)
- 避免重复的列出现
-
常规索引(KEY/INDEX)
-
全文索引(FULLTEXT KEY)
在用来查询的字段添加索引
出现的错误
``波浪号传字段
''单引号传字符
命名规则name_name
varchar是长度可变的字符 会多出1-2位保存实际长度
char长度不可变 剩下的长度会用空格填充,用trim去除
金额类型的用decimal 对应Java的Big Decimal
Comment'注释'
雪花算法
源自Twitter,结合时间戳,按照时间生成Id,全局唯一,自增类型,与InnoDB搭配使用(B+Tree)

浙公网安备 33010602011771号