关于Sql语句的心得体会

在众多的找平要求中,无一不是要求熟悉sqlserver的,sqlserver无非要熟悉存储过程、触发器、指针、sql语句,最基本的就是sql语句,一下几点总结:

1、在sql语句中,查询用到函数的时候,很快就要联想到group,因为想要合计后赛选这个是不二之选,因为where语句只是筛选单条数据,比如查询所有学生平均成绩大于60分,就要用到having avg()>60.

2、在遇到自身筛选的情况下就要用到子查询,因为要查询一个表中某字段比较的时候就要from,两个字查询比较。

3、在求总数而又关联其他表的时候,就要考虑 left Outer join 而不是join。

4、聚合函数要用到的时候,尽量考虑group,因为要求得某字段的总数量,如学生表的某学生总成绩就要将固定字段group起来,才能取得这些字段下的某总数。

5、在查询不包含的时候,where语句可以用not in,但是要注意在select的时候适当使用distinct。

6、在使用group by 的时候,分组后用count函数的话,以by id的话,的出来的结果是id一组中存在多少个id这样的项。

7、from后面的子查询不能join其他表,否则报错,多次指定值。切记!

8、子查询当成是字段的时候,一定是单独不可执行的,要不然就会错误,返回多条数据。

9、需要注意的是where后面面的语句只针对单条数据,比如where a<60那么就是说这个集合中当有一条数据小于60的项就列出来,不去除重复性,集合筛选应该用not in。

10、慎用not in,有安全性问题。

 

posted @ 2014-03-13 15:35  维生素ABC  阅读(1388)  评论(0编辑  收藏  举报
好好学习哈!