SQL HAVING 实例与having用法

在SQL HAVING子句用于限制有条件的一个SQL语句的输出,通过一个SQL总在你列的SELECT列表中使用的功能。

您不能指定一个SQL凡有人对在SELECT列表哪些SQL聚合函数用于列条款的标准。例如,下面的SQL语句将产生一个错误:

SELECT Employee, SUM (Hours)
FROM EmployeeHours
WHERE SUM (Hours) > 24
GROUP BY Employee

HAVING子句的SQL是用来做正是这一点,到指定的聚合功能,在您的查询中使用条件:

SELECT Employee, SUM (Hours)
FROM EmployeeHours
GROUP BY Employee
HAVING SUM (Hours) > 24

上面的SQL语句将选择所有员工和他们各自的时间总和,只要这个数字是24以上。在SQL HAVING子句可以看到的结果如下:

Employee Hours
John Smith 25
Tina Crown 27
时间: 2024-10-10 12:00:13

SQL HAVING 实例与having用法的相关文章

sql的left join 实例与语法用法

sql的left join 实例与语法用法 左联接和类似的权利JOIN操作可以在任何的FROM子句用于组合两个表中的记录.左JOIN操作用于创建一个左外连接,包括从两个表中第一个(左)的所有记录,即使没有匹配在第二记录值.右JOIN操作用于创建一个右外连接,包括从第二(右的所有记录两个表),即使没有匹配的第一条记录的值.   虽然LEFT JOIN或RIGHT JOIN操作可以内部的内蒙古嵌套加入,反之则不然.内部联接操作无法在一个左嵌套JOIN或RIGHT JOIN.   使用表'员工'和'工

SQL Server 中 RAISERROR 的用法详细介绍_mssql2005

 SQL Server 中 RAISERROR 的用法 raiserror 的作用: raiserror 是用于抛出一个错误.[ 以下资料来源于sql server 2005的帮助 ] 其语法如下: RAISERROR ( { msg_id | msg_str | @local_variable } { ,severity ,state } [ ,argument [ ,...n ] ] ) [ WITH option [ ,...n ] ] 简要说明一下:   第一个参数:{ msg_id |

SQL Server触发器和事务用法示例

本文实例讲述了SQL Server触发器和事务用法.分享给大家供大家参考,具体如下: 新增和删除触发器 alter trigger tri_TC on t_c for INSERT,delete as begin set XACT_ABORT ON declare @INSERTCOUNT int; declare @DELETECOUNT int; declare @UPDATECOUNT int; set @INSERTCOUNT = (select COUNT(*) from insert

SQL中case when的用法详解

Case具有两种格式.简单Case函数和Case搜索函数. 简单Case函数 1.语法 CASE input_expression_r WHEN when_expression_r THEN result_expression_r [ ...n ] [ ELSE else_result_expression_r ] END 2.实例   CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END Case搜索函数 1.语法 CASE WH

SQL Server时间戳功能与用法详解

本文实例讲述了SQL Server时间戳功能与用法.分享给大家供大家参考,具体如下: 一直对时间戳这个概念比较模糊,相信有很多朋友也都会误认为:时间戳是一个时间字段,每次增加数据时,填入当前的时间值.其实这误导了很多朋友. 1.基本概念 时间戳:数据库中自动生成的唯一二进制数字,与时间和日期无关的, 通常用作给表行加版本戳的机制.存储大小为 8个字节. 每个数据库都有一个计数器,当对数据库中包含 timestamp 列的表执行插入或更新操作时,该计数器值就会增加.该计数器是数据库时间戳.这 可以

SQL Server触发器和事务用法示例_MsSql

本文实例讲述了SQL Server触发器和事务用法.分享给大家供大家参考,具体如下: 新增和删除触发器 alter trigger tri_TC on t_c for INSERT,delete as begin set XACT_ABORT ON declare @INSERTCOUNT int; declare @DELETECOUNT int; declare @UPDATECOUNT int; set @INSERTCOUNT = (select COUNT(*) from insert

SQL Server时间戳功能与用法详解_MsSql

本文实例讲述了SQL Server时间戳功能与用法.分享给大家供大家参考,具体如下: 一直对时间戳这个概念比较模糊,相信有很多朋友也都会误认为:时间戳是一个时间字段,每次增加数据时,填入当前的时间值.其实这误导了很多朋友. 1.基本概念 时间戳:数据库中自动生成的唯一二进制数字,与时间和日期无关的, 通常用作给表行加版本戳的机制.存储大小为 8个字节. 每个数据库都有一个计数器,当对数据库中包含 timestamp 列的表执行插入或更新操作时,该计数器值就会增加.该计数器是数据库时间戳.这 可以

HOW TO:在 SQL Server 实例之间传输登录和密码

server 概要在将数据库移动到新服务器后,用户可能无法登录到新服务器.相反,他们会收到下面的错误信息: Msg 18456, Level 16, State 1Login failed for user '%ls'. 您必须将登录和密码传输到新服务器.本文介绍如何向新服务器传输登录和密码. 返回页首如何在正运行 SQL Server 7.0 的服务器之间传输登录和密码SQL Server 7.0 数据转换服务 (DTS) 对象传输功能可在两台服务器之间传输登录和用户,但它不传输 SQL Se

c#匿名方法的静态数据成员和实例数据成员用法

匿名方法总是以一个delegate关键字开始,后面跟着用在方法和方法体(the method body)本身中的参数.正如从上面示例中所见,用户不需要确定匿名方法的返回类型.它(译注:指返回类型)由方法体中的return语句推断而来..NET CLR不能执行像匿名方法一样的自由流(free flowing)代码块.CLR要求:它执行的每个方法是一个类型的一部分,并且应该是一个静态(static)方法或实例(instance)方法(译注:若一个方法声明中含有 static 修饰符,则称该方法为静态