1. mysql中的null和‘’:都为空值
如果查询过程中想设置默认值可以用:case when field ='' then 0 end (可将null值和‘’值全转化为0)
float不能直接比较大小。可以乘以100变成整数之后比较。
2. mysql的if函数挺好用,先说一下。
语法:if(expr1,expr2,expr3)
如果expr1为true,则返回expr2;反之,则返回expr3。
与case when区别:多余2种情况时,只能用case when.
3.如果多表连接查询出来的结果主键id有重复时,用group_concat()函数+group by id解决。
例如:select id,group_concat(name) from aa group by id;(id重复,而name不重复,用该函数将name拼接起来作为一个字段)
另:group_concat(distinct name) 加一个distinct可以在拼接时去除name字段的重复值。
4.mysql对emoji表情符号的支持不太好,如果数据中包含emoji表情符号,操作mysql时可能会抛类似异常:
原因:utf-8编码,emoji表情通常有4个字节,而mysql的utf-8编码最多是3个字节,所以导致该异常出现。
解决办法:1.更改mysql字符集编码为utf8mb4来容纳这些字符(mysql支持utf8mb4的最低版本为5.5.3)
2.过滤掉所有emoji字符