Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2918957
  • 博文数量: 167
  • 博客积分: 613
  • 博客等级: 中士
  • 技术积分: 5473
  • 用 户 组: 普通用户
  • 注册时间: 2011-09-13 21:35
个人简介

人, 既无虎狼之爪牙,亦无狮象之力量,却能擒狼缚虎,驯狮猎象,无他,唯智慧耳。

文章分类
文章存档

2015年(19)

2014年(70)

2013年(54)

2012年(14)

2011年(10)

分类: Mysql/postgreSQL

2014-01-02 16:08:47

     接着上午的干劲儿,下午继续!还是老方法,先来列列自己感觉重要的几个知识点吧:
1. Sql语言通配符:
   -%:用来表示任意多个任意字符,从无到多个字符均可;
  -*:用来表示一个字符,无论是什么字符,就只能代表一个
  -LIKE:使用通配符时必须使用'LIKE'关键字,告诉DBMS使用通配符的方式解读后面的搜索字符串;
  -Exa:‘WHERE column like '%AB%'’  //最后的%可以在某些DBMS中匹配自动填充的空格
2. 计算字段:
  -一句话认识:'计算字段'并非真的存在于数据库的表中,只是存在于SELECT模式中,在语句中体现结果
  -用途:字符串拼接 + 算术运算;
  -AS:有时可以使用AS别名的形式使得计算字段容易理解;

3. 汇总数据:聚合函数
   这里还是使用自己熟悉的名称——聚合函数——来称呼这些常用的基本功能函数吧,她们主要是:
  -AVG:平均值函数,针对指定的列求其平均值;
   -MAX/MIN:最大值和最小值函数,针对列;
  -COUNT:计数函数,主要用来统计特定条件的行数目,COUNT(*)针对所有行统计,COUNT(列名)只统计该列非NULL的行数;
  -SUM:求和函数,你懂的;
   这些函数都不难,最好的方法是直接看使用的例子,先看AVG函数:

   然后是MAX/MIN函数:

   然后是COUNT函数:

   COUNT时还可以使用DINTINCT关键词,不重复统计:

4. 分组函数:GROUP BY + HAVING
   有些时候需要针对选择的数据进行分组,需要使用GROUP BY关键词进行,后面要列出分组的指标列,基本的使用顺序为:
   SELECT  Columns From Table WHERE Condition-1 (分组前过滤) GROUP BY Column-A HAVING COUNT(Column-B) > N ORDER BY Column-A

   接下来是HAVING的用法实例,一般会结合聚合函数对分组后的数据进行过滤:

   分组时注意NULL的行,一般遇到NULL行都会作为一个分组统计,多个NULL行会作为同一个分组出现:

     OK,简单地小结到这里吧,接下来还有两个部分:表连接和表的其他操作,明天争取全部搞定吧!
阅读(2214) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~