zoukankan      html  css  js  c++  java
  • SQL学习笔记9

    SQL Aggregate 函数

    SQL Aggregate 函数计算从列中取得的值,返回一个单一的值。

    有用的 Aggregate 函数:

    • AVG() - 返回平均值
    • COUNT() - 返回行数
    • FIRST() - 返回第一个记录的值
    • LAST() - 返回最后一个记录的值
    • MAX() - 返回最大值
    • MIN() - 返回最小值
    • SUM() - 返回总和

    SQL Scalar 函数

    SQL Scalar 函数基于输入值,返回一个单一的值。

    有用的 Scalar 函数:

    • UCASE() - 将某个字段转换为大写
    • LCASE() - 将某个字段转换为小写
    • MID() - 从某个文本字段提取字符,MySql 中使用
    • SubString(字段,1,end) - 从某个文本字段提取字符
    • LEN() - 返回某个文本字段的长度
    • ROUND() - 对某个数值字段进行指定小数位数的四舍五入
    • NOW() - 返回当前的系统日期和时间
    • FORMAT() - 格式化某个字段的显示方式

    ****************************************************************************************************************************************************************************************************

    AVG() 函数返回数值列的平均值。

    SQL AVG() 语法

    SELECT AVG(column_name) FROM table_name

    下面的 SQL 语句从 "access_log" 表的 "count" 列获取平均值:

    eg:SELECT AVG(count) AS CountAverage FROM access_log;

    下面的 SQL 语句选择访问量高于平均访问量的 "site_id" 和 "count":

    实例

    SELECT site_id, count FROM access_log
    WHERE count > (SELECT AVG(count) FROM access_log);
    ****************************************************************************************************************************************************************************************************

    COUNT() 函数返回匹配指定条件的行数。


    SQL COUNT(column_name) 语法

    COUNT(column_name) 函数返回指定列的值的数目(NULL 不计入):

    SELECT COUNT(column_name) FROM table_name;

    SQL COUNT(*) 语法

    COUNT(*) 函数返回表中的记录数:

    SELECT COUNT(*) FROM table_name;

    SQL COUNT(DISTINCT column_name) 语法

    COUNT(DISTINCT column_name) 函数返回指定列的不同值的数目:

    SELECT COUNT(DISTINCT column_name) FROM table_name;

    注释:COUNT(DISTINCT) 适用于 ORACLE 和 Microsoft SQL Server,但是无法用于 Microsoft Access。

    ************************************************************************************************************************************************************************************

    GROUP BY 语句可结合一些聚合函数来使用


    GROUP BY 语句

    GROUP BY 语句用于结合聚合函数,根据一个或多个列对结果集进行分组。

    SQL GROUP BY 语法

    SELECT column_name, aggregate_function(column_name)
    FROM table_name
    WHERE column_name operator value
    GROUP BY column_name;
     

    统计 access_log 各个 site_id 的访问量:

    实例

    SELECT site_id, SUM(access_log.count) AS nums
    FROM access_log GROUP BY site_id;

    SQL GROUP BY 多表连接

    下面的 SQL 语句统计所有网站的访问的记录数:

    实例

    SELECT Websites.name,COUNT(access_log.aid) AS nums FROM access_log
    LEFT JOIN Websites
    ON access_log.site_id=Websites.id
    GROUP BY Websites.name;
     

    HAVING 子句

    在 SQL 中增加 HAVING 子句原因是,WHERE 关键字无法与聚合函数一起使用。

    HAVING 子句可以让我们筛选分组后的各组数据。

    SQL HAVING 语法

    SELECT column_name, aggregate_function(column_name)
    FROM table_name
    WHERE column_name operator value
    GROUP BY column_name
    HAVING aggregate_function(column_name) operator value;
     

    现在我们想要查找总访问量大于 200 的网站,并且 alexa 排名小于 200。

    我们在 SQL 语句中增加一个普通的 WHERE 子句:

    实例

    SELECT Websites.name, SUM(access_log.count) AS nums FROM Websites
    INNER JOIN access_log
    ON Websites.id=access_log.site_id
    WHERE Websites.alexa < 200 
    GROUP BY Websites.name
    HAVING SUM(access_log.count) > 200;
     
    *************************************************************************************************************************************************************************************************

    MID() 函数用于从文本字段中提取字符。

    SQL MID() 语法

    SELECT MID(column_name,start[,length]) FROM table_name;

    NOW() 函数返回当前系统的日期和时间。

    SQL NOW() 语法

    SELECT NOW() FROM table_name;
     
     

    FORMAT() 函数用于对字段的显示进行格式化。

    SQL FORMAT() 语法

    SELECT FORMAT(column_name,format) FROM table_name;

    SQL快速参考:http://www.runoob.com/sql/sql-quickref.html

  • 相关阅读:
    连接上三星C5,播放音乐断音
    连接上LG NEXUS4播放音乐无声音输出,关机再开机回连再播放OK
    连接上LG G5时,“连接”提示音能听到明显拖尾杂音
    WebRTC原生开发和混合开发优缺点分析对比
    Safari即将支持WebRTC
    WebRTC通话过程中如何避免其它进程音量下降
    WebRTC 中RTT实现方法
    开发Rtmp推流端开发库的几种选择方案
    WebRTC中OPUS编码相关设置和分析
    WebRTC手记之初探
  • 原文地址:https://www.cnblogs.com/chickenwrap/p/9979870.html
Copyright © 2011-2022 走看看