SQLalchemy和Almbic的索引A关系

发布于 01-21 15:02 字数 898 浏览 4 评论 0原文

我有两个桌子,例如Bellow: 表1:

class Table1(Base):
__tablename__ = "table1"

id = Column(UUID, primary_key=True)
created_at = Column(DateTime(True), nullable=False, server_default=func.now())
status_id = Column(ForeignKey("lookups.id"), index=True)

 status = relationship(
    "Lookup",
    primaryjoin="Tables.status_id == Lookup.id",
    backref="table1_statuses",
)

Table 2: 

class Lookup(Base):
__tablename__ = "lookups"

id = Column(UUID, primary_key=True)
type = Column(String(64))
value = Column(String(256))
maximum = Column(Float(53), server_default="0")
sys_period = Column(TSTZRANGE, nullable=False, index=True)

如何在table1上进行全文搜索,并找到状态value。我的查询看起来像这样:

model = Table1
# search_term is `value` in the Lookup table

result = (session.query(model)
    .filter(model.__ts_vector__.match(search_term)).all)

I have two tables like bellow:
Table 1:

class Table1(Base):
__tablename__ = "table1"

id = Column(UUID, primary_key=True)
created_at = Column(DateTime(True), nullable=False, server_default=func.now())
status_id = Column(ForeignKey("lookups.id"), index=True)

 status = relationship(
    "Lookup",
    primaryjoin="Tables.status_id == Lookup.id",
    backref="table1_statuses",
)

Table 2: 

class Lookup(Base):
__tablename__ = "lookups"

id = Column(UUID, primary_key=True)
type = Column(String(64))
value = Column(String(256))
maximum = Column(Float(53), server_default="0")
sys_period = Column(TSTZRANGE, nullable=False, index=True)

HOW CAN I do a full text search on Table1 and find the status value. My query will look like this:

model = Table1
# search_term is `value` in the Lookup table

result = (session.query(model)
    .filter(model.__ts_vector__.match(search_term)).all)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文