最近状态不好,整理的东西比较杂,凑合看吧。。
这三张图是基础知识,但是我总是记不太清楚贴上来,合理的定义字段的类型和大小,比如状态可以使用tinyint、主键可以使用bigint,普通的使用int,int(4) int(10)其实都是一回事,关于日期啊,实践中年月日的就定义为date,年月日时分秒这种最好是timestrap而不是datetime,datetime字节多,字符串也是确定的最好是char,varchar也可以,比如备注字段可以用text基本上就够了,金额的存储一般使用bigdecimal(16,2)。
set GLOBAL slow_query_log=ON
show variables like 'slow_query_log' -- 开启慢sql记录
show variables like 'long_query_time' -- sql临界时间
show variables like 'query_cache%' -- 查询缓存
show variables like 'max_con%' -- 客户端最大连接数
这些也都是基础知识了,慢sql记录很有用,开发时使用explain写出好sql,线上可以通过慢sql日志定位慢查询进行优化。
-- 数字函数
SELECT max(10);
-- 字符串函数
SELECT CONCAT(1,2);-- 连接
SELECT LENGTH("111"); -- 长度
-- 日期函数
SELECT ADDDATE('2020-04-14',INTERVAL 1 DAY); -- 当前日期加一天
SELECT DATE('2020-04-14'); -- 获取日期
SELECT CURRENT_DATE(); -- 2020-04-14
SELECT NOW(); -- 2020-04-14 14:40:38
SELECT CONV(10,10,2); -- 10进制转2进制
-- 其他函数
SELECT IF(1>0,'yes','no'); -- 选择
begin select * from aaa end ROLLBACK; -- 事务
case n<10 then set n = 20 end case; -- 判断语句