zoukankan      html  css  js  c++  java
  • SQL GROUP BY 实例

    GROUP BY 语法:

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

    实例

    表结构如下:

    BookComments

    列 名

    类型

    长度

    是否允许为空

    说明

    CommentsNo

    bigint

    8

    主键 非负 自增

    BookNo

    varchar

    50

    外键 book表主键

    Created

    Time

    Datetime

    评论生成时间

    Uid

    Varchar

    10

    评论人ID

    Text

    Text

    评论内容

    BookList表:

    列 名

    类 型

    大 小

    是否允许为空

    说明

    BookNo

    Varchar

    10

    书号 主键

    BookName

    Varchar

    200

    书名

    Auther

    Varchar

    200

    作者

    Introduction

    Text

    简介

           Connection conn = DatabaseConn.getConnection(); //此处调用的是前面篇章中的连接池的方法
           Statement stm = conn.createStatement();
          ResultSet result=stm.executeQuery("" +
            "select BookComments.BookNo,BookList.BookName,BookList.Auther," +
            "COUNT(BookComments.BookNo) AS  CountNo " +
            "from BookComments,BookList " +
            "where BookList.BookNo=BookComments.BookNo " +
            "GROUP BY BookComments.BookNo,BookList.BookName,BookList.Auther " +
            "order by CountNo desc ");

    实现功能:统计图书的评论数,然后按照从多到少的顺序排列起来,首先使用BookNo将BookComments,BookList连接起来,然后将BookComments.BookNo,BookList.BookName,BookList.Auther这些列聚组,COUNT(BookComments.BookNo) AS  CountNo统计不同的BookNo出现的次数,即实现记录评论的数量的目的

  • 相关阅读:
    groovy 执行shell
    expect 用法
    shebang解释
    docker 安装
    centos7 lvm添加硬盘后扩展磁盘空间
    scoped的原理和deep深度选择器的妙用
    swagger3
    帮评网
    反射工具
    网络只能传输二进制
  • 原文地址:https://www.cnblogs.com/cherri/p/1703502.html
Copyright © 2011-2022 走看看