我想在基于模型/视图的PyQt
应用程序中使用SQL
等效的PyQt
语句:
SELECT * FROM table ORDER BY foo, bar
如何按QSqlTableModel
中的多个列进行排序,尤其是setSort()
接受单个column
参数?
答案 0 :(得分:1)
似乎有setSort()
的替代品,称为setFilter()
。
来自PyQt文档:
QSqlTableModel.setFilter(self,QString filter)
将当前过滤器设置为过滤。
过滤器是SQL WHERE子句,没有关键字WHERE(for 例如,name ='Josephine')。
Ergo,这解决了这个问题:
fooModel.setFilter("never_zero != 0 ORDER BY foo, bar")
never_zero
字段(惊讶,惊讶)永远不会为零。