1
在我的程序中,我使用了一個帶有「論文」表的sqlite數據庫。我有幾個QTableviews
顯示包含在論文中的數據。每個視圖一個模型。我初始化我的模型是這樣的:將查詢設置爲模型並進一步限制
model.setTable("papers")
然而,在每個QTableView
,我想只顯示一個子集的數據的。這個子集由sql查詢確定。例如:
query = QtSql.QSqlQuery()
query.prepare("SELECT id FROM papers WHERE new=1")
query.exec_()
model.setQuery(query)
但是,如果我想對子集(而不是整個模型)執行ADDITIONAL查詢,它開始變得非常複雜。所以我想如果有一種方法之一:
- 定義獲得槽的SQL查詢作爲模型數據的子集
- 對查詢執行附加查詢
例:
當我選擇new = 1的所有項目後,我希望所有人都有喜歡= 1。
您可以創建一個臨時表。但是,在大多數情況下,您可以將其他子句添加到'where'以獲得優化。 –
是的,但我完全想避免在where語句中添加子句 – Rififi
您可以使用代理模型來添加所需的命令。 – Plouff