A. 原生sql语句与asq语句对比
假设有这样一个sql查询语句:
select id,ip,ch,date from tbl group by ch,date;
如要使用python的asq模块的group_by方法,则可以这样实现:
(1)通过sql查询所有记录得出res_list;
(2)然后使用asq功能:
query(res_list).group_by(lambda p: p[2], lambda p: p[3]).select(lambda mem: mem[0]).to_list();
其实主要逻辑就是通过sql获取所有数据,然后asq先分组,再选取每组的第一条记录,最后返回结果列表。
B.关于优势
另外,如果只有一条查询语句,是没必要使用asq模块功能的,因为性能不可能与原生sql查询要好。相对于原生sql查询,asq主要的优势是某些情况下,可以尽量的减少扫描表的次数。
作者:moxiaomomo 发表于2013-5-6 21:23:51 原文链接
阅读:44 评论:0 查看评论