关于jupyter magic
jupyter magic拥有一些神奇的方法
常用的就是
time
和
sql
关于%sql
%sql基于ipython-sql实现,网上教程教的%sql
、%%sql
的用法,
基本都是整个单元格执行一个sql查询,
而没有介绍更进一步的,python+sql混合,动态调用执行的写法。
在ipython-sql提到了$
符号的用法
基于这一点,在jupyterlab中使用sql,我们可以选择更灵活的python为主导的写法。
python代码调整sql查询语句,并通过%sql执行的写法
举个例子
假如说,有一个数据库表tabx曾因单表过大,拆分成了30个表tabx0,tabx1,tabx2…tabx29。
你现在正在使用jupyterlab,想要统计每个表的记录数。
这么愣查30遍有失优雅,
人生苦短,应该更高效一些。
写成下面的格式,一次执行,
python就能帮你完成直接30次查询,并统计输出结果。
这里演示是直接查了记录条数,所以简单用result[0][0]
处理结果了。
还可以用df = result.DataFrame()
将结果转换成的DataFrame数据格式,基于pandas模块做数据分析。