一. 数据库对象命名和设计建议
二. 表设计最佳实践
三. SQL查询最佳实践
SQL 最佳实践 - SELECT
- 避免对大字段执行order by,group by等引起排序的操作
- 避免频繁使用count()获取大表行数
- 慎用通配符字段 “*”
- 避免在select目标列中使用子查询
- 统计表中所有记录数时,不要使用count(col)来替代count(*)
- count(distinct col)用来计算该列不重复的非null的数量
思考题 - (判断题)Schema的owner默认拥有该Schema下对象的所有权限,包括删除权限,删除权限影响较大,需谨慎使用。(√)
Database的owner默认拥有该Database下所有对象的所有权限,包括删除权限。删除权限影响较大,请谨慎使用。
Schema的owner默认拥有该Schema下对象的所有权限,包括删除权限。删除权限影响较大,请谨慎使用 - (单选题)如下哪个SQL语句符合规范?(B)
A. SELECT * FROM t1 WHERE col1 = col1;
B. SELECT * FROM t1 WHERE col1 IS NOT NULL;
C. SELECT * FROM t1 WHERE col1 = NULL;
D. SELECT * FROM t1 WHERE col1 != NULL; - (单选题)分布式数据库业务设计应遵循以下哪一条原则?(B)
A. 大量用分布式事务,能用就用,不能用,拆表也要用,极大化应用分布式数据库的分布式特性。
B. 合理设计业务,尽量避免分布式事务,从而提高业务并发、性能,降低复杂性。
C. 领导说怎么写就怎么写。
D. 我是开发,我想怎么写就怎么写。