初学数据库,不喜勿喷,如果有错请提出

来源:互联网 发布:node书推荐 编辑:程序博客网 时间:2024/06/05 20:14

                                                                                                                              简单查询

SELECT 需 要投影的列 from 表名  where 过滤条件;

1.   *表示全部查询  先将FROM后的表放在内存然后看SELECT的条件 
2.   表前缀:将表名放在列的前面如:SELECT gongsi1.t_name FROM


3.   SELECT CONCAT(t_name,'-',t_dizhi) AS '公司名字和地址的拼接' FROM gongsi;
     AS 可省略
     如果要加*要有,号SELECT *,全部查询。




4.   计算列:SELECT t_age+10 FROM gongsi;   结果不存入


5.   排除数据重复性:SELECT DISTINCT t_name FROM gongsi;针对某一列,不包括空


6.   返回限定的函数:SELECT * FROM gongsi LIMIT ? ?
                     如果1个参数,则表示从第一个0开始,默认返回数第一个
                     如果是2个参数,则表示从?行,返回?数(第1个?是第1个数;第2个?是第2个数)
                     
7.   用WHERE查询空  要用t_xxxx 条件 is MULL  不为空:t_xxx is not NULL


8.   执行范围:between   ?  and ?;包含上下线


9.   查询集合:t_xxx IN (xx xx xx xx xx);
     不在集合:t_xxx NOT IN (xx xx xx xx xx);


10.  模糊查询:以限制字数的查询  LIHE('__')这个是两个字的查询


11.  排序操作:ORDER BY 列 DESC\ASC;   降序  升序


12.  执行顺序:执行from →  WHERE过滤条件 →  SELECT投影 →  ORDER BY排序  
   


                                                      聚合函数与分组
目标:常用的聚合函数的用法
      数据分组的统计


1.   AVG平均值   SUM总和   


2.   COUNT(列\*)FROM 表;  计总数


     COUNT(ALL 列)FROM 表;  计总数   不计空值;默认值ALL


3.   SUM(列)FROM 表;默认值ALL;


4.   AVG(列)FROM 表;自动过滤为空的值 ALL不计空值


5.   MAX \MIN (列) FROM 表  默认排除空;没有DISTINCT *的属性;


6.   聚合函数只能单独使用


7.   GROUP BY   过滤分组


8.   分组后就可以与聚合函数使用


9.   先过滤后分组


10.  使用了聚合函数的列
     语句在GROUP BY  (对投影有限制,只能对这两个)


11.  WHERE后面不可以有聚合函数


12.  HAVING
    
     在分组过后再过滤


     SELETC 列  from  表  分组   过滤




13.  HAVING只对聚合函数,WHERE在非聚合函数


14.  执行from →  WHERE过滤条件 →分组→  SELECT投影 →HAVING条件过滤→  ORDER BY排序
1 0
原创粉丝点击