zoukankan      html  css  js  c++  java
  • sql 必知必会学习笔记(三)

    六、创建计算字段

     存储在表中的各列不一定是应用程序所需要的,需要将表中的数据进行转换、计算或者格式化之后再传给程序处理。在数据库中对数据进行转换比在程序中速度快。

    拼接字段

     拼接:将值联接到一起构成单个值。

    拼接操作符有‘+’和‘||’根据DBMS不同而支持的不同。

     ①、select RTRIM(colum1)+' ('+RTRIM(column2)+')' as tilte from table1 order by column1;

    此例中使用+对column1和column2字段进行拼接返回。

    因为许多数据库中,结合成计算字段的列会用空格填充,所以使用RTRIM函数去掉右边添加上的空格。

    因为是拼接的字段,所以返回值没有名字,在程序引用的时候比较难,因此使用as关键字给返回值一个别名(title)。 

    执行算数运算

    ②、select column1,column2,column3,column2*column3 as title from table1 where column1=value;

     sql支持的算数运算符:+、-、*、/ 加减乘除。

    九、汇总数据

    聚集函数:运行在行组上,计算和返回单个值的函数。

    主要应用:♢确定表中行数(或者满足特定条件或包含特定值的行数)

                   ♢获得表中行组的和。

                   ♢找出表列(或者所有行或者特定行)的最大值、最小值、平均值。

    sql的5个聚集函数:

    ------------------------------------------------------------------------------------------

                函数                                     说明

    ------------------------------------------------------------------------------------------

              AVG()                             返回某列的平均值

              SUM()                            返回某列值之和

              COUNT()                        返回某列的行数

              MAX()                            返回某列的最大值

              MIN()                            返回某列的最小值

    ------------------------------------------------------------------------------------------

    ①、select AVG(column1) as name from table1 where column2=value;

          计算column2值为value的column1的平均值。

          avg()忽略列值为null的行。

    ②、select count(*) from table1;

          计算table1表中的所有列的和,不忽略null值。

    ③、select count(column1) as name from table1;

          count(column)对特定列中具有值的行进行计数,忽略null值。

          对table1表使用count(*)时,结果为5,但是column1列中有3列有值,2列没有值,则对table1表使用count(column1),结果为3.

    ④、select max(column1) as name from table1;

          max用于数值、日期的数据,也可用于文本列。如果数据按column1列排序,max返回最后一列。

          min用法和max一样,用于文本时,如果数据按column1列排序,min返回最前边一列。

    ⑤、select sum(column1) as name from table1;

          返回某列的和值。

    ⑥、select sum(column1*column2) as name from table2

          sum函数可以用于合计计算值。

    sum、max、min都忽略列值为null的行。

    聚集不同值

    ⑦、select avg(distinct column1) as name from  table1 where column2=value;

          求column2=value时,不同column1值的平均值。

          对于聚集函数,默认为all,当只统计不同值时,需要加上distinct。

          distinct只能用于count(column),不能用于count(*),distinct必须指定列名,不能用于计算和表达式。

    组合聚集函数

    ⑧、select count(column1),avg(column2),max(column2),min(column2) from table1.

          一个select语句,使用多个聚集函数。

  • 相关阅读:
    react-navigation
    react
    generator-react-webpack
    安装Eclipse反编译插件(jadclipse)
    Python爬虫学习笔记3:基本库的使用
    Python爬虫学习笔记2:爬虫基础
    Python爬虫学习笔记1:request、selenium、ChromeDrive、GeckoDriver等相关依赖安装
    Python学习笔记28:面向对象进阶及 hashlib
    Python学习笔记27:反射,类的内置方法
    Python学习笔记26:封装、@property、@staticmethod和@classmethod装饰器方法、反射getattr()
  • 原文地址:https://www.cnblogs.com/zhouxiuquan/p/2299482.html
Copyright © 2011-2022 走看看