常见sql技巧
1、正则表达式的使用
Mysql > select name,email from t where email regexp "@163[.,]com$"
2、巧用Rand()提取随机行
Mysql > select * from t order by rand(); Mysql > select * from order by rand() limit 3; //随机取出三条数据
3、利用group by 的 with rollup
使用group by的with rollup字句可以检索出更多的分组聚合信息。
注意:with rollup 不可以和order by 同时使用
4、用bit group functions做统计
在使用group by 语句时可以同事用使用bit_and、bit_or函数来完成统计工作。这两个函数主要做用是做数值之间的逻辑位运算
5、使用外键需要注意的问题
innodb 类型的表支持外键,myisam类型的表,虽然可以创建外键,但是不起作用,主要原因是不支持外键。
6、mysql help 使用
mysql 的提示操作 “ ? ” 例如 "? create view "
mysql > ? contents;
Sql语句优化
1、优化sql语句的一般步骤
1.1 通过show status 命令了解各种sql的执行频率
格式:mysql > show [session|global] status;
1.2 定位执行效率较低的sql语句
explain select * from table where id=1000;
desc select * from table where id=1000;
1.3 通过explain 分析较低下来sql的执行计划 重点要看 影响行数
2、索引问题
3、两个简单使用的优化方法
4、常用sql优化