目录
源数据表,提取表中所有列的数据?
解决方案
SQL语句中的通配符
别名
源数据表,提取表中所有列的数据
名次 | 球队名 | 胜 | 平 | 负 | 积分 | 进球 | 失球 |
1 | 西班牙 | 6 | 0 | 1 | 18 | 8 | 2 |
2 | 荷兰 | 6 | 0 | 1 | 18 | 12 | 6 |
3 | 德国 | 5 | 0 | 2 | 15 | 16 | 5 |
4 | 乌拉圭 | 3 | 2 | 2 | 11 | 11 | 8 |
5 | 阿根廷 | 4 | 0 | 1 | 12 | 10 | 6 |
6 | 巴西 | 3 | 1 | 1 | 10 | 9 | 4 |
7 | 加纳 | 2 | 2 | 1 | 8 | 5 | 4 |
8 | 巴拉圭 | 1 | 3 | 1 | 6 | 3 | 2 |
9 | 日本 | 2 | 1 | 1 | 7 | 4 | 2 |
10 | 智利 | 2 | 0 | 2 | 6 | 3 | 5 |
11 | 葡萄牙 | 1 | 2 | 1 | 5 | 7 | 1 |
12 | 美国 | 1 | 2 | 1 | 5 | 5 | 5 |
13 | 英格兰 | 1 | 2 | 1 | 5 | 3 | 5 |
14 | 韩国 | 1 | 1 | 2 | 4 | 6 | 8 |
15 | 斯洛伐克 | 1 | 1 | 2 | 4 | 5 | 7 |
16 | 墨西哥 | 1 | 1 | 2 | 4 | 4 | 5 |
17 | 科特迪瓦 | 1 | 1 | 1 | 4 | 4 | 3 |
18 | 斯洛文尼亚 | 1 | 1 | 1 | 4 | 3 | 3 |
19 | 南非 | 1 | 1 | 1 | 4 | 3 | 5 |
20 | 澳大利亚 | 1 | 1 | 1 | 4 | 3 | 6 |
21 | 瑞士 | 1 | 1 | 1 | 4 | 1 | 1 |
22 | 丹麦 | 1 | 0 | 2 | 3 | 3 | 6 |
23 | 希腊 | 1 | 0 | 2 | 3 | 2 | 5 |
24 | 塞尔维亚 | 1 | 0 | 2 | 3 | 2 | 3 |
25 | 新西兰 | 0 | 3 | 0 | 3 | 2 | 2 |
26 | 意大利 | 0 | 2 | 1 | 2 | 4 | 5 |
27 | 尼日利亚 | 0 | 1 | 2 | 1 | 3 | 5 |
28 | 法国 | 0 | 1 | 2 | 1 | 1 | 4 |
29 | 阿尔及利亚 | 0 | 1 | 2 | 1 | 0 | 2 |
30 | 洪都拉斯 | 0 | 1 | 2 | 1 | 0 | 3 |
31 | 喀麦隆 | 0 | 0 | 3 | 0 | 2 | 5 |
32 | 朝鲜 | 0 | 0 | 3 | 0 | 1 | 12 |
解决方案
使用代表所有列和所有行的字段名或者通配符,获取整个南非世界杯最终排名表的所有数据。
1 通过OLE DB方法找到外部数据源,保留“选择表格“对话框中对名称的默认选择,单击“确定”按钮,激活“导入数据”对话框,再单击“属性”按钮,在弹出的“连接属性”对话框中勾选“打开文件时刷新数据”复选框,然后单击“定义”选项卡,清空“命令文本“框中原有的内容。
2 在“命令文本”框中输入以下SQL连接语句:
SELECT *
FROM [sheet1$]
或者输入
SELECT 名次,球队名,胜,负,积分,进球,失球
FROM [sheet1$]
或者输入
SELECT [sheet1$].*
FROM [sheet1$]
或者输入
SELECT A.*
FROM [sheet1$] A
单击“确定”按钮返回“导入数据”对话框,指定返回的数据查询位置为现有工作表的“$A$1",然后单击“确定”按钮,即可得到所有列的数据。
SQL语句中的通配符
通配符*在SQL语句里代表所有行及所有列,可以起到简化SQL语句的作用。有时候,源数据表中某些列或行被隐藏起来,导致显示的列名和实际表中使用的列名有所不同,使用通配
符*提取所有行及列则不需要担心这个问题。
因为本例中源数据表的列字段不多,将所有的列字段列举出来并不麻烦,即从源数据表中提取每一个列字段名,可获取所有行及所有列的数据,如第二个语句表示形式。
对于第三个语句表达方式,主要是通配符*的前面指定了获取的数据来源于指定的工作表,工作表名称与通配符*之间需要用句号(.)进行连接。
第四个语句表达方式中,[sheet$] A表示将sheet1命名为A,工作表名称的长度过长,会导致编写的SQL语句的可读性不强,而别名可以简化工作表的缩写,善用别名可以培养好的使用习惯。
别名
别名主要是为了简单标注一个表。在多表查询的情况下,如果工作表的名称比较长,并且多个表中存在相同的字段,为了简单标注不同的表的相同栏位,可以添加别名。