如何使用sql查询collection内容_Excel | 如何在Excel中使用SQL查询语句?

    结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。

    在Excel表格中当数据量行数不太多的时候,使用筛选、高级筛选、函数等查询数据,很灵活,也很方便;一旦数据量比较大,比如上万行、几十万行、甚至更多时,再使用筛选、高级筛选、函数等Excel的运行效率就会明显下降,并且有可能导致软件崩溃。

    这个时候,如果在Excel中能像在数据库中使用SQL语句查询一样,效率问题应该会有较大的改观。那么,问题来了,在Excel中对于二维表,能使用SQL语句吗?如何使用呢?

    近期,刚好有同事需要在Excel中处理大量的结构化数据,看他一会儿Excel、一会儿SQL Server的操作,也不是很方便。于是,想通过下面一个具体示例,来介绍一种在Excel中使用SQL语句的方法。

1、数据源

    在“data”表中,有这样一个比较常见的二维表结构(演示数据,大概仅几百行)。

96666013c614f4c10f1b5015e36c4f77.png

第一行是表头(字段),从第2行开始向下都是行记录。

2、建立数据连接

数据—其他来源—来自Microsoft Query

069bc6acebe2ed305c8ea63c5a349785.png

选中Excel Files*,点击“确定”

7f26a721e4bc6d42a007eee24019b690.png

07f10bc3f5eca30c6045795c5f6cd978.png

点击“确定”按钮。

3、查询向导设置

3.1 选中表和字段(即列)

1232212c2f4f8b8be26e75419f95eb1d.png

点击下一步:

9e1ef5c4acf7bb5ffbd8c43928880b10.png

3.2 设置筛选条件

    如果不需要筛选,可以点“下一步”跳过。

47bfa73b97d307718f2912945bd93552.png

3.3 设置关键字(KEY值)和排序

21c481af25e1d5fbe0b4e4db8359ac1d.png

4、将连接结果导入Excel

选中sheet1表的A1单元格作为目标单元格,点击“确定”。

cd7274cb6fe0ea594e0222d535e49765.png

数据源将以“表”的形式显示在sheet1中,如图:

32159d6f3bdbdb1ce26a825dc18ff5fd.png

一顿操作猛如虎,那么问题来了,SQL语句到底在哪写呢?…

5、找到SQL语句编写的地方

依次点击:数据—全部刷新—连接属性

5023a55d023486ae21dcb057fff79bf2.png

801e0ed650967da36f108720b1fb8230.png

SQL语句如下:

SELECT `data$`.移动类型, `data$`.日期, `data$`.物料, `data$`.物料凭证, `data$`.数量, `data$`.库存地点, `data$`.移动类型文本, `data$`.工厂, `data$`.订单, `data$`.订单价格单位, `data$`.订单单位, `data$`.批次, `data$`.采购订单, `data$`.货币, `data$`.供应商FROM `C:\Users\lixg\Desktop\SQL\测试.xlsx`.`data$` `data$`ORDER BY `data$`.物料凭证

6、编写自己的SQL语句并执行

在上图的“命令文本”窗口,SQL语句可以自行编写(编写方法和Sql Server、mySql等数据库原则上都一样,可能部分语法上有些微不同)

    我们编写一个简单的查询语句,将数据源data表中的的移动类型311的结果查询出来:

4c46029fc964f16220f1f82df0fe7242.png

SQL语句如下:

SELECT * FROM `C:\Users\lixg\Desktop\SQL\测试.xlsx`.`data$` `data$`where `data$`.移动类型 = '311'

执行结果如下图:

71ce42f5b2756c52c3f23e3db5196be1.png

以上只是一个简单的示例,如果需要执行复杂的查询,可以参照这种方法,在命令文本栏位中编写自己的查询语句即可。关于SQL语句的编写在这里就不做介绍了。

    有兴趣的朋友,动手试试吧?

                  6ff572be4077f4c7d614d3407ae94530.png/20200423

7f6e92d82d4c22c921726e1d97d68678.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值