You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Peewee教程:如何结合元组使用IN运算符

使用Peewee构建PostgreSQL多列IN查询

要实现你需要的多列IN查询,Peewee直接支持元组字段的in_()方法,以下是具体实现步骤:

  1. 先定义对应tbl表的Peewee模型(根据实际字段类型调整):
from peewee import PostgresqlDatabase, Model, IntegerField, CharField

# 初始化数据库连接
db = PostgresqlDatabase(
    'your_database',
    user='your_user',
    password='your_password',
    host='localhost'
)

class Tbl(Model):
    a = IntegerField()  # 替换为实际字段类型
    b = CharField()     # 替换为实际字段类型

    class Meta:
        database = db
        table_name = 'tbl'
  1. 构建并执行多列IN查询:
# 准备需要匹配的多值元组列表
match_values = [(val1_1, val1_2), (val2_1, val2_2), (val3_1, val3_2)]

# 生成目标查询
query = Tbl.select().where((Tbl.a, Tbl.b).in_(match_values))

# 遍历结果
for record in query:
    print(f"a: {record.a}, b: {record.b}")

这段代码会生成与你提供的SQL完全等价的查询语句,Peewee会自动将元组列表转换为PostgreSQL支持的(a, b) IN ((...), (...))语法。

内容的提问来源于stack exchange,提问作者NinjaMeTimbers

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 02:03:15