【问题标题】:Filtering QSqlRelation in QSqlRelationalTableModel在 QSqlRelationalTableModel 中过滤 QSqlRelation
【发布时间】:2021-03-25 06:09:27
【问题描述】:

我有两个表,例如: 人员(ID、姓名、JobID、年龄) 工作(ID、公司、薪水)

我正在使用 SqlRelationalTableModel,它正在使用以下 QSqlRelation:

   model-> setTable("Person")
   model-> setRelation(2,QSqlRelation("Jobs", "Id", "Company"))

我的问题是现在我只想显示薪水超过 50000 的工作,我不知道如何过滤 Jobs 表来执行它,因为 setFilter 只影响 Person 表。

【问题讨论】:

    标签: c++ sql qt


    【解决方案1】:

    您可以使用QSqlQueryModel

    QSqlQueryModel* model = new QSqlQueryModel();
    model->setQuery("select * from Person left join Jobs on Person.JobID=Jobs.Id where Salary>50000");
    

    【讨论】:

    • 如果我还需要支持桌面更新怎么办?
    猜你喜欢
    • 1970-01-01
    • 2019-11-20
    • 1970-01-01
    • 1970-01-01
    • 2023-02-06
    • 2016-07-26
    • 2022-01-05
    • 1970-01-01
    • 2018-02-02
    相关资源
    最近更新 更多