【问题标题】:Checking whether two Django querysets have any items in common检查两个 Django 查询集是否有任何共同的项目
【发布时间】:2013-10-29 13:08:09
【问题描述】:

我在 Django 中有两个查询集。如何有效地检查它们是否有任何共同的元素,即两个查询集中是否存在任何元素?

【问题讨论】:

    标签: django orm


    【解决方案1】:

    您可以检查是否存在交叉路口:

    (qs1 & qs2).exists()
    

    【讨论】:

      【解决方案2】:

      Django 1.11 中,只需queryset1.intersection(queryset2)

      【讨论】:

        【解决方案3】:

        您可以像集合一样使用查询集:

        intersection = queryset1 & queryset2
        

        intersection 将是两个查询集的交集

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-11-22
          • 1970-01-01
          • 1970-01-01
          • 2017-12-26
          • 1970-01-01
          • 2014-12-06
          相关资源
          最近更新 更多