python peewee - 如何使用distinct

时间:2013-07-11 15:06:07

标签: python-2.7 peewee

我正试图让这段代码与peewee一起使用:

distinct_list = QSales.select(QSales.account, QSales.tax_code).distinct().where(QSales.trans_num == 3717)
print distinct_list

但打印命令结果为:

<class '__main__.QSales'> SELECT DISTINCT t1.`Account`, t1.`Tax_Code` FROM `q_sales` AS t1 WHERE (t1.`Trans_#` = %s) [3717]

在MySQL编辑器中运行上面的select语句(将打印结果复制到编辑器)返回正确的结果。

我也尝试过:

distinct_list = QSales.select(fn.Distinct(QSales.account, QSales.tax_code)).where(QSales.trans_num == 3717)

但得到了相同的结果

我做错了什么?

谢谢。

1 个答案:

答案 0 :(得分:12)

睡过头,我意识到代码应该如下:

distinct_list = QSales.select(QSales.account, QSales.tax_code).distinct().where(QSales.trans_num == 3717)
for item in distinct_list:
    print item.account
    print item.tax_code

现在已关闭。谢谢。