楼主 wise |
本文背景:近来,很多会员对Excel里面的SQL兴趣很大,并且觉得SQL语言能在excel里面应用,实在太神奇了。对于SQL,本人并没有深入研究,仅仅从表面上认识了一点,特意推出该帖子,让更多的会员能够一步一步地走进SQL学习中去。 注意:本题是专门开出来学习之用,一发现跟帖,本人将进行删除,请原谅。 一、认识SQL语言 SQL语言,简称结构化查询语言(Structured Query Language),是数据库人员的一门基本语言。SQL是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统可以使用相同的SQL语言作为数据输入与管理的接口。它以记录集合作为操作对象,所有SQL语句接受集合作为输入,返回集合作为输出,这种集合特性允许一条SQL语句的输出作为另一条SQL语句的输入,所以SQL语句可以嵌套,这使他具有极大的灵活性和强大的功能,在多数情况下,在其他语言中需要一大段程序实现的功能只需要一个SQL语句就可以达到目的,这也意味着用SQL语言可以写出非常复杂的语句。 对于SQL语言,我的理解比较显浅,就个人来看,目前来看,在excel里面能够查询基本简单数据,能够连接合并多个工作表,能够借助数据透视表的功能实现数据汇总之类,那就算是在数据透视表里面很好地掌握了SQL了。 二、如何进入excel里面的SQL查询界面呢?大家请看以下这个操作。 具体操作:数据→现有连接→浏览更多→打开数据源→确定→属性→定义→命令文本(M)→输入SQL语句→确定。 具体的SQL语句:
SQL学习源材料.rar |
2楼 wise |
三、认识SQL基本语法 从上面的 “ select * from [数据源$] ”这句最基本的SQL学习开始,大家注意到,Select 在英文里面的意思是查询。* 在excel里面代表所有字段。 我们从最简单的查询语句开始学习。 首先,大家一定要记住excel里面查询语句的最基本最基本的查询结构。
这个最基本的查询结构是所有入门SQL查询的学员必须要掌握的基础知识点,否则,你想学更深入的excel里面的SQL语句就无从下手。 注意:在excel中,一个工作表的表示是这样的:[工作表名称$];如果该数据源在某一区域,比如数据源在单价表的A2:D10区域,如果要引用该区域,可以写成:[单价表$A2:D10]。 我们开始以例子来带着大家去学习。 例子1:查询源数据中的城市、商品、销售量、销售额。具体的SQL语句是:
具体演示请看: 从上面的例子来看,城市、商品、销售量、销售额分别是源数据表里面的各个列名,但一句很简单的语句,就可以把我们所需要的查询的东西查询出来,大家不知道是否有了一点点头绪。 |
3楼 wise |
例子2、对列字段使用别名 查询要求:查询源数据表中的城市、商品、销售量,并且城市、商品、销售量要分别用英文形式来显示出来。
请看操作演示: 注意到列名称是否已经修改过了。 一般来说,使用列别名,只需在Select字句的列名称后面列别名,同时列别名前应加上可选的关键字 "AS",以便区分列名称和列别名。 另外,我们也可以把工作表名称用列别名表示。如查询源数据表中的所有列。
这两句SQL语句查询出来的结果都是一模一样的,但注意到第二句用了列别名。 |
4楼 wise |
例子3、简单的列计算 在查询数据时,有时候需要进行列计算,以便获取到所需要的数据。比如在源数据表中,已经出现了销售量和销售额,我们需要求出销售单价是多少? 而我们知道销售单价=销售额/销售量,这时我们可以写出下面的SQL语句:
销售额/销售量 as 销售单价,这个就是最简单的除运算,运行结果可以查询出销售单价。 对于简单的列计算是,select 子句可以使用乘法(*)、除法(\)、加法(+)、减法(-)等注意的算式运算符。 |
5楼 mile7312 |
谢谢,学到很多 |
6楼 peter.777 |
有點概念了 |
7楼 monvzhilei |
有些地方字体太小了。还是希望能放大一点。 |
8楼 likezsu |
很有收获,谢谢 |
9楼 水星钓鱼 |
跟小七学SQL |
10楼 yd0209 |
能否讲解一下如何通过SQL服务器读取财务软件里面数据的例子? |
11楼 myqw |
请问:区域可否使用自定义名称。 |
12楼 悟空师弟 |
正想学SQL,碰上了就不容错过,收藏了。 |
13楼 fangkeke |
谢谢,学习一下。 |
14楼 wenshui2006 |
研究研究,,,,, |
15楼 aerla |
多谢,学习了,呵呵! |
16楼 CUsOK |
恩,太好了,找的就是它! |
17楼 CUsOK |
没了?就这么点???我想知道怎么引用多个工作薄里面的数据…… |
18楼 chlypy2008 |
跟着楼主的帖学习 |
19楼 lhwhc |
谢谢楼主,怎么不继续了?期待楼主继续发这样简单实用的语句示例! |
20楼 zhang84997 |
学习了,太感谢了。 |
21楼 yesing |
好东东,值得收藏学习 |
22楼 gxuan2008 |
跟着小七学SQL. |
23楼 YAOYANYAN |
请问 select * from [数据源$] 里的 * 应该代表的是所有字段?我有一张基础表中字段数为63个,需要取其中10个字段,编辑过程中出现这样的问题,当字段超数过六个时,点确定会出现"参数不足,期待是1"的提示?请问这个提示是什么意思呢?多谢! |
24楼 ljly780816 |
累死了,直接透视全解决 |
25楼 lrlxxqxa |
跟着小七学习SQL |
26楼 jiujiu8900 |
非常好,楼主继续 |
27楼 wenchuanrui |
大学时还专门学过数据库,不过不用了吧就忘了 |
28楼 zgz9146 |
很好很强大 收货颇多 很不错的入门材料 |
29楼 herenqing |
初步学习,尚没有眉目! |
30楼 xinger7 |
从基础学起。我有信心一定学到信手拈来的程度 |
31楼 淡烟笼月 |
谢谢老师 |
32楼 小种子 |
很实用,谢谢 |
33楼 小种子 |
今天终于入门了,好好练习了一下,真的要谢谢您哦。 |
34楼 迎客松 |
期待下文! |
35楼 秋水伊人甲天下 |
好东西全收藏了。 |
36楼 ddpdq20010712 |
要学的东西,真是太多了呀 |
37楼 纵鹤擒龙水中月 |
想学,就不要跟帖,晕,现在不继续了 |
38楼 snowangle007 |
太需要了,sql基础,收藏了,慢慢学习。 |
39楼 googlefansw |
突然发现EXCEL 强大。 |
40楼 xpm130 |
是嘛,大家跟了帖,楼主就不继续了,多可惜啊~~~ |
41楼 peyond |
给力的入门教程,thanks |
42楼 servis |
经典一定要学习啊 |
43楼 xiez_z |
谢谢!多在社方面给些案例。 |
44楼 wyf22006 |
谢谢,这对于SQL的入门太有帮助了 |
45楼 herelazy |
小7,还更新吗,等着啦! |
46楼 puff_wang |
好东东,要收藏! |
47楼 ゛.蓝田钰暖. |
期待续集·············· |
48楼 anney710 |
太棒了,终于可以启蒙了 |
49楼 303989109 |
注意:本题是专门开出来学习之用,一发现跟帖,本人将进行删除,请原谅。 老师都说了,不能跟帖的 |
50楼 larkzh |
删帖是可以的,但是要继续啊,这么多人期待,不能虎头蛇尾。看了很多关于sql的实例,但真正自己写句子还是在这儿跟着教师做了一遍,少个方括号都查了半天,所以希望继续系统学习,如果老师有时间,请继续发帖,所有的跟都可以删除。 |
51楼 maxnima |
非常好,有点概念了。谢谢。 |
52楼 jackctu |
受益匪浅 |
53楼 冯晶晶2011 |
啊,没有了吗?继续呀 |
54楼 yncxxmj |
正在学习SQL知识。 |
55楼 feisky1219 |
|
56楼 feisky1219 |
|
57楼 fengjunhan |
先回复,再下载.. |
58楼 mayabinxa |
好东西,学习了,感觉EXCEL太强大了 |
59楼 liuna530 |
辛苦楼主了 |
60楼 lydy5635 |
好东西**** |
61楼 amiaosheng |
我也关心是否可以直接把财务软件中的数据给抓出! |
62楼 amiaosheng |
谢谢小7版主分享 收获不少! |