数据来源之 ODBC——SQL 与 PQ 技术的强强联合

    比如有的功能 SQL 比较简单,又比如有的功能用 Power Query 更加简单,我们可以用他们联合的方式增强工作效率。

    本节要求:

    求出姓名为两个字的人,并且工资大于等于 4000 元人名币的,给他们做一个排名。

    效果图:

    (2条消息) 6、Power Query-SQL与PQ技术的强强联合_少年休闲海-CSDN博客_sql和powerquery - 图1

    数据来源:D:\Power Query\Power Query 6

    (2条消息) 6、Power Query-SQL与PQ技术的强强联合_少年休闲海-CSDN博客_sql和powerquery - 图2

    这次我们不用直接导入工作薄了,这样无法使用 SQL 语句。

    (2条消息) 6、Power Query-SQL与PQ技术的强强联合_少年休闲海-CSDN博客_sql和powerquery - 图3

    我们使用 “ODBC” 的方式导入,我们发现数据源名称里面有两种操作方式。

    (2条消息) 6、Power Query-SQL与PQ技术的强强联合_少年休闲海-CSDN博客_sql和powerquery - 图4

    第一种是手动去创建这个来源:电脑——控制面板——管理工具——ODBC(具体多少位的我们可以查看 Excel 里面)

    (2条消息) 6、Power Query-SQL与PQ技术的强强联合_少年休闲海-CSDN博客_sql和powerquery - 图5

    添加数据源的驱动程序,然后一步步操作,显然这个方式我们不是所推荐的,数据源每次变化都需要进行更改。

    第二种是手动去写这个连接字符,一劳永逸。

    还是选择上面的 “dBASE Files”, 点击下面的高级选项。

    这里我们给出了通用版的连接字符串的规律:

    2007 以上版连接字符串:
    “driver={Microsoft Excel Driver (.xls, .xlsx, .xlsm, .xlsb)};driverid=1046;dbq=C:\a.xlsx;defaultdir=c:\mypath;dsn=dBASE Files”
    2003 版连接字符串:
    Driver={Microsoft Excel Driver (*.xls)};DriverId=790;Dbq=C:\MyExcel.xls;DefaultDir=c:\mypath;

    我们直接拷贝driver={Microsoft Excel Driver (.xls, .xlsx, .xlsm, .xlsb)};driverid=1046;dbq=

    后面直接跟我们数据源的地址 D:\Power Query\Power Query 6

    在 SQL 语句中读出数据源. xlsx 下面的 “工资” 选项卡下的内容。

    (2条消息) 6、Power Query-SQL与PQ技术的强强联合_少年休闲海-CSDN博客_sql和powerquery - 图6

    (2条消息) 6、Power Query-SQL与PQ技术的强强联合_少年休闲海-CSDN博客_sql和powerquery - 图7

    点击 “编辑” 进入 PQ 界面。

    (2条消息) 6、Power Query-SQL与PQ技术的强强联合_少年休闲海-CSDN博客_sql和powerquery - 图8

    心细的胖友可能发现,好像 SQL 语句没有起到什么作用嘛,不要急,下面我们来进行用 SQL 的处理。

    下面我们点击 “高级编辑器”,在这里面可以随便的回车换行,调整到自己满意的格式进行 SQL 编辑。

    (2条消息) 6、Power Query-SQL与PQ技术的强强联合_少年休闲海-CSDN博客_sql和powerquery - 图9

    编辑 SQL 语句:select * from [工资 $] where 姓名 like ‘__’ and 工资 >= 4000

    这里名字为两个字的意思可以用 SQL 转换为两个下划线。

    (2条消息) 6、Power Query-SQL与PQ技术的强强联合_少年休闲海-CSDN博客_sql和powerquery - 图10

    (2条消息) 6、Power Query-SQL与PQ技术的强强联合_少年休闲海-CSDN博客_sql和powerquery - 图11

    其实这部分的功能在期初导入这部分数据的时候就可以进行编辑。

    双击右侧的 “源”。

    (2条消息) 6、Power Query-SQL与PQ技术的强强联合_少年休闲海-CSDN博客_sql和powerquery - 图12

    比如在这里更改按部门进行汇总两个字人员的总工资:select 部门, sum(工资) from [工资 $] where 姓名 like ‘__’ group by 部门

    (2条消息) 6、Power Query-SQL与PQ技术的强强联合_少年休闲海-CSDN博客_sql和powerquery - 图13

    都是可以的。这里我们还原。

    随后跟结果排一个顺序,从高到低 降序。

    (2条消息) 6、Power Query-SQL与PQ技术的强强联合_少年休闲海-CSDN博客_sql和powerquery - 图14

    然后给他们排一个工资的名词,这里我们可以用添加列里面的 “添加索引列”。从 1 开始,不然默认是从 0 开始。

    (2条消息) 6、Power Query-SQL与PQ技术的强强联合_少年休闲海-CSDN博客_sql和powerquery - 图15

    之后我们就可以创建连接或者直接保存到当前工作薄。

    (2条消息) 6、Power Query-SQL与PQ技术的强强联合_少年休闲海-CSDN博客_sql和powerquery - 图16

    当然我们可以自由去选择,用哪种方法简便就选择哪个。
    https://saper.blog.csdn.net/article/details/53924183