手机
当前位置:查字典教程网 >编程开发 >数据库其他 >SQL语句详细说明[部分]
SQL语句详细说明[部分]
摘要:SQL语句教程(11)GroupBy我们现在回到函数上。记得我们用SUM这个指令来算出所有的Sales(营业额)吧!如果我们的需求变成是要算...

SQL 语句教程 (11) Group By

我们现在回到函数上。记得我们用

SUM

这个指令来算出所有的 Sales (营业额)吧!如果我们的需求变成是要算出每一间店 (store_name) 的营业额 (sales),那怎么办呢?在这个情况下,我们要做到两件事:第一,我们对于 store_name 及 Sales 这两个栏位都要选出。第二,我们需要确认所有的 sales 都要依照各个 store_name 来分开算。这个语法为:

SELECT "栏位1", SUM("栏位2") FROM "表格名" GROUP BY "栏位1"

在我们的示范上

Store_Information 表格

store_name

sales

date

Los Angeles

$1500

jan-05-1999

San Francisco

$300

jan-08-1999

Boston

$700

jan-08-1999

我们就打入

SELECT store_name, SUM(Sales) FROM Store_Information GROUP BY store_name

结果 :

store_name SUM(Sales)

Los Angeles $1800

San Diego $250

Boston $700

当我们选不只一个栏位,且其中至少一个栏位有包含函数的运用时,我们就需要用到 GROUP BY 这个指令。在这个情况下,我们需要确定我们有 GROUP BY 所有其他的栏位。换句话说,除了有包括函数的栏位外,我们都需要将其放在 GROUP BY 的子句中。

SQL 语句教程 (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 子句并不是一定需要的。

在我们Store_Information 表格这个例子中

Store_Information 表格

store_name

sales

date

Los Angeles

$1500

jan-05-1999

San Francisco

$300

jan-08-1999

Boston

$700

jan-08-1999

我们打入

SELECT store_name, SUM(sales) FROM Store_Information GROUP BY store_name HAVING SUM(sales) > 1500

结果 :

store_name SUM(Sales)

Los Angeles $1800

【SQL语句详细说明[部分]】相关文章:

写出高性能SQL语句的35条方法分析

在PostgreSQL中实现递归查询的教程

在Windows下自动备份PostgreSQL的教程

JDBC大批量写入数据到SQLServer2000,记录数大于10000

关于ADOX的相关知识

SQL中代替Like语句的另一种写法

未在本地计算机上注册“Microsoft.Jet.OleDb.4.0”提供程序错误的解决方法

SQL 查询语句积累

SQL查询出表、存储过程、触发器的创建时间和最后修改时间示例

数据库设计的折衷方法

精品推荐
分类导航