练习用的表如下:
[img]
[/img]
(11) Group By
我们现在回到函数上。记得我们用SUM 这个指令来算出所有的 Sales (营业额)吧!如果我们的需求变成是要算出每一间店 (store_name) 的营业额 (sales),那怎么办呢?在这个情况下,我们要做到两件事:第一,我们对于 store_name 及 Sales 这两个栏位都要选出。第二,我们需要确认所有的 sales 都要依照各个 store_name 来分开算。这个语法为: SELECT "栏位1", SUM("栏位2") FROM "表格名" GROUP BY "栏位1"
当我们选不只一个栏位,且其中至少一个栏位有包含函数的运用时,我们就需要用到 GROUP BY 这个指令。在这个情况下,我们需要确定我们有 GROUP BY 所有其他的栏位。换句话说,除了有包括函数的栏位外,我们都需要将其放在 GROUP BY 的子句中。
[img]
[/img]
(12) HAVING
那我们如何对函数产生的值来设定条件呢?举例来说,我们可能只需要知道哪些店的营业额有超过$1,500。在这个情况下,我们不能使用WHERE 的指令。那要怎么办呢?很幸运地,SQL 有提供一个HAVING 的指令,而我们就可以用这个指令来达到这个目标。HAVING 子句通常是在一个 SQL 句子的最后。一个含有 HAVING 子句的 SQL 并不一定要包含GROUP BY 子句。HAVING 的语法如下: SELECT "栏位1", SUM("栏位2") FROM "表格名" GROUP BY "栏位1" HAVING (函数条件) 请读者注意: GROUP BY 子句并不是一定需要的。
[img]
[/img]
[img]
[/img]
(13) ALIAS
接下来,我们讨论alias (别名) 在 SQL 上的用处。最常用到的别名有两种: 栏位别名及表格别名。简单地来说,栏位别名的目的是为了让 SQL 产生的结果易读。在之前的例子中, 每当我们有营业额总合时,栏位名都是 SUM(sales)。虽然在这个情况下没有什么问题,可是如果这个栏位不是一个简单的总合,而是一个复杂的计算,那栏位名就没有这么易懂了。若我们用栏位别名的话,就可以确认结果中的栏位名是简单易懂的。第二种别名是表格别名。要给一个表格取一个别名,只要在 FROM 子句中的表格名后空一格,然后再列出要用的表格别名就可以了。这在我们要用 SQL 由数个不同的表格中获取资料时是很方便的。这一点我们在之后谈到连接 (join) 时会看到。我们先来看一下栏位别名和表格别名的语法: SELECT "表格别名"."栏位1" "栏位别名" FROM "表格名" "表格别名" 基本上,这两种别名都是放在它们要替代的物件后面,而它们中间由一个空白分开
[img]
[/img]
- 大小: 6.5 KB
- 大小: 2.3 KB
- 大小: 3.3 KB
- 大小: 2 KB
- 大小: 2.8 KB
分享到:
相关推荐
总结来说,"W3cschools菜鸟教程整站离线打包完美web开发前端后端"是Web开发者的一份宝贵资源,它集成了全面的Web开发知识,无论你是初学者还是有经验的开发者,都能从中受益。通过系统的学习和实践,你将能够独立...
- **MySQL的命令操作**:通过命令行工具执行SQL语句。 **2. 用PHP操纵MySQL** - **连接数据库**:使用`mysqli_connect()`函数建立连接。 - **执行SQL语句**:使用`mysqli_query()`函数执行SQL语句。 - **处理结果...
- **第一周回顾**:总结所学内容。 - **第二周概貌**:预览接下来的学习内容。 以上就是从《菜鸟级SQL21天自学通》的部分内容中提炼出来的核心知识点。通过这些知识点的学习,你可以对SQL语言有一个全面而深入的...
【标题】基于SpringBoot+Mybatis+mysql的毕业生就业信息分析系统 本项目是一个典型的IT毕业设计案例,采用SpringBoot框架、Mybatis持久层框架以及MySQL数据库,构建了一个用于分析毕业生就业信息的系统。这样的系统...
总结,这个项目结合了Java Web开发的主流框架SSM,强大的MySQL数据库,以及适用于物联网通信的MQTT协议,构建了一个全面的物联网监管系统。通过对这些技术的学习和实践,开发者可以深入了解物联网应用的开发和部署,...
1. 数据库连接:使用JDBC(Java Database Connectivity)建立Java程序与MySQL之间的桥梁,处理SQL语句,进行数据增删改查操作。 2. 错误处理:编写异常处理代码,确保系统在遇到错误时能够正常运行并给出反馈。 3. ...
总结,本学生管理系统结合了Python的灵活性、Qt的图形界面设计能力和MySQL的数据存储优势,实现了对学籍信息的有效管理。通过这样的项目实践,学习者不仅可以掌握具体的编程技术,还能提升问题解决和项目管理的能力...
SQL(Structured Query Language)是一种用于管理和处理关系数据库的标准语言,它的功能强大且广泛应用于各种数据库系统,如MySQL、Oracle、SQL Server等。本教程旨在帮助初学者深入理解SQL的基础语法,构建坚实的...
Django框架通过内置的数据库抽象层与MySQL交互,支持SQL语句的执行和数据的CRUD(创建、读取、更新、删除)操作。 【系统功能模块】 1. **用户管理**:包括用户注册、登录、权限控制等功能,确保系统的安全性与...
4. **数据库操作**:建立MySQL数据库,编写SQL语句,进行数据操作。 5. **测试与调试**:对系统进行全面的功能性和性能测试,修复发现的问题。 6. **部署上线**:配置服务器环境,发布系统,进行线上运行。 【总结...
【JavaWeb在线购书系统】是一个典型的IT毕业设计项目,主要使用了JavaWeb技术栈,包括JSP(JavaServer Pages)、Servlet以及MySQL数据库。这个项目旨在实现一个完整的网上书店功能,让学生在实践中掌握Web开发的核心...
- `_ConnectionPtr`:表示数据库连接,用于创建和管理与数据库的连接,以及执行不返回结果的SQL语句。 - `_CommandPtr`:执行SQL命令或存储过程,返回一个记录集。它可以基于全局连接或直接使用连接字符串。 - `_...
它可以动态生成SQL语句,支持多种数据库结构,包括SQL Server、Oracle、MySQL等。 3. **事件驱动编程**:每个对象都有自己的事件集,如点击、双击、鼠标移动等。编写事件处理程序来响应这些事件,是PowerBuilder...
总结,这个基于PHP+MySQL的图书销售管理系统涵盖了Web开发的多个方面,为学习者提供了全面的实践平台,有助于提升实际开发能力。通过分析和理解该项目,开发者可以深入学习到Web应用开发的完整流程,为未来的职业...
2. **BEGIN/END语法**:MS SQL Server中的存储过程经常使用BEGIN...END块来分隔语句,在FIREBIRD中则可以直接使用AS...BEGIN...END来定义存储过程。例如: ```sql CREATE PROCEDURE MyProcedure AS BEGIN -- ...
### Python爬虫总结知识点 #### 一、Python爬虫所需基础知识 **1. Python语言基础** - **基本概念:** - 变量:存储数据的容器。 - 数据结构:列表(list)、元组(tuple)、字典(dict)、集合(set)等。 - 控制流...
### SQL21天自学通知识点概述 ...- **预览**:总结本周所学内容,并预览下周的学习重点。 以上知识点涵盖了SQL基础知识及常用操作,适合初学者快速入门。接下来的几周将继续深入学习更多高级主题。
2. **数据插入**:利用`INSERT`语句可以向数据库中添加新的记录。 3. **数据更新**:`UPDATE`语句允许修改数据库中已存在的记录。 4. **数据删除**:`DELETE`语句用来移除不再需要的记录。 5. **数据库和表的管理**...