ad

《Excel VBA+SQL数据管理与应用模板开发》_工作效率UP!_3.1 SQL 主要语句

网友投稿 106 2023-11-07

【摘要】 本书摘自《Excel VBA+SQL数据管理与应用模板开发》一书中第3章,第1节,韩小良著。

3.1 SQL 主要语句: SELECT 语句的基本结构及说明

在众多的SQL 语 句 中 ,SELECT 语句是使用最频繁的。SELECT 语句主要用来对数据进行查询,并返回符合用户查询标准的结果数据。

《Excel VBA+SQL数据管理与应用模板开发》_工作效率UP!_3.1 SQL 主要语句

SELECT 语句的基本结构

SELECT 语句有5个主要的子句,而FROM 是唯一必需的子句。每一个子句有大量的选 择项和参数等。关于这些子句的具体使用方法将在以后的各个实例中进行详细介绍。

SELECT 语句的语法格式如下:

Select 字段列表

FROM 子 句

[WHERE 子句]

[GROUP BY 子句]

[HAVING 子句]

[ORDER BY子句]

说 明

在写SQL语句时,不区分英文大小写,怎么习惯怎么来。但是,所有的标点符号都必 须是半角字符。

SELECT 语句的各项组成说明

1.字段列表

字段列表指定多个字段名称,各个字段之间用逗号“,”分隔。

用星号“*”代替具体的字段可以表示所有的字段。

当包含有多个表的字段时,可用“数据表名.字段名”来表示,即在字段名前明示该字 段所在的数据表。

例如,下面的语句表示选择数据表的“姓名”“部门”和“工资总额”这3个字段名。 SELECT 姓名,部门,工资总额

下面的语句表示选择所有的字段。

SELECT*

下面的语句表示分别选择数据库中的数据表“信息表”中的字段“姓名”和数据表“考勤表” 中的字段“姓名”。

SELECT信息表.姓名,考勤表.姓名

对于 Excel工作表,如果分别从工作表“信息表”和“考勤表”中查询字段“姓名”,那 么就必须写为:

SELECT[信息表$].姓名,[考勤表$].姓名

2.FROM 子句

FROM 子句是一个必需子句,用于指定要查询的数据表,各个数据表之间用逗号“,”分隔。 需要注意以下4点。

(1)如果是 Access 、SQLServer 等数据库的数据表,直接写数据表名即可。

FROM 数据表名

(2)如果是 Excel工作表,那么必须在工作表名后面写上$,并用方括弧括起来(此时, 工作表的第一行必须是标题,并且不能有合并单元格)。

FROM[工作表名$]

(3)如果是Excel 工作表的已经定义了名称的数据区域,则直接写上数据区域名称即可。 FROM 定义的名称

(4)如果是 Excel工作表的指定单元格区域,例如,是工作表“销售记录”的单元格区 域A1:M100, 那么需要写为:

FROM[销售记录$A1:M100]

3.WHERE 子 句

WHERE 子句是一个可选子句,用于指定查询的条件,可以使用SQL运算符组成各种条 件运算表达式。

例如,下面的子句即表示要查询的部门是“销售部”。

WHERE部门='销售部'

需要注意以下3点。

(1)如果条件值是数值,则直接写上数值,例如:

WHERE年龄<40

(2)如果条件值是字符串,则必须前后加单引号“”,例如:

WHERE 部门='销售部'

(3)如果条件值是日期,则必须前后加井号“#”或单引号“”,例如: WHERE 日期=#2006-10-22#

4.GROUP BY 子句

GROUP BY 子句是一个可选子句,用于指定分组项目,将具有同样内容的记录(如日期 相同、部门相同、性别相同、产品相同、客户相同等)归类在一起。

例如,下面的语句表示将查询的数据按部门分组。

GROUP BY 部门

5.HAVING 子句

HAVING子句是一个可选子句,功能与WHERE 子句类似,只是必须与 GROUP BY 子句 一起运行。

例如,要想只查询平均工资大于5000元的记录并按部门进行分组,则可以使用子句。 GROUP BY 部门 HAVING AVG(工资总额)>5000

6.ORDER BY 子句

ORDER BY 子句是一个可选子句,用于指定查询结果以何种方式排序。其排序方式有两 种:升序(ASC) 和降序(DESC) 。如果省略ASC和 DESC, 就表示按升序 (ASC) 排序。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:《深入理解 Java 虚拟机 JVM 高级特性与最佳实践(第3版)》_求知之路漫漫_3.2.2 可达性分析算法
下一篇:《自己动手写 Python 虚拟机》_更理解虚拟机的意义_7.1 列表
相关文章

 发表评论

暂时没有评论,来抢沙发吧~

×