sql—选择在sqlalchemy中没有不同值的行

omvjsjqw  于 2021-08-01  发布在  Java
关注(0)|答案(1)|浏览(309)

有人能建议一种方法来选择列没有唯一值的行吗?我没有一个活跃的项目,这更像是我心中的一个问题。所以我没有db模式可以共享。
例如:如果我有五条记录,其中一条记录的custno=7,一条记录的custno=9,三条记录的custno=11,我只想选择custno=11的三行

von4xj4u

von4xj4u1#

您可以使用如下sql查询

SELECT * FROM invoice
WHERE CustNo IN (
    SELECT CustNo FROM invoice
    GROUP BY CustNo
    HAVING COUNT(*) > 1
)

在sqlalchemy的sql表达式语言中

qry = invoice.select().where(
    invoice.c.CustNo.in_(
        select([invoice.c.CustNo])
        .group_by("CustNo")
        .having(func.count(text("*")) > 1)
    )
)

相关问题