MySql语句记录
truncate table tablename; 效果同不带where子句的delete相同,仅会删除表数据,不删除表结构;但是truncate table语句属于DDL语句,不会在删除时加事务,删除后也不可恢复。另一个区别是delete后不会真正释放表空间,而truncate table后会把表空间释放至低位水平。 select SQL_CACHE / select SQL_NO_CACHE select SQL_CACHE xxx 如果查询结果可被缓存并且query_cache_type是ON或者DEMAND,查询的结果将被mysql缓存。 select SQL_NO_CACHE xxx mysql服务器不对这条语句使用缓存,即:既不查看这个查询是否存在缓存,也不把查询结果缓存在服务器内。 join … on / join … using(col1, col2, …) join .. on 常规join语句写法,on后边添加join的条件。 join .. using(col1, col2, ...) 如果被join的两个表的列名相同且使用等于条件来join,则可以简化为这种写法。 等价于 join .. on a.col1 = b.col1 and a.col2 = b.col2 and ... insert… on duplicate key update… 插入数据时