[英]insert record with JPA having a field as an foreign key to another table
[英]JPA: Indexing by another field of a table referenced by a foreign key
我正在通过Play框架和Mysql使用JPA。
假设我有一个JQL查询,如下所示:
SELECT p FROM Person p WHERE p.address.city = 'New York'
地址字段是对地址表的外键引用。
我的理解是,此查询将需要对整个Person表进行表扫描,“取消引用”“ address”字段,然后也对Address表进行扫描。 即使Address对象上的city字段已建立索引,我们仍在查看整个Person表的扫描。
我想通过某种方式在Person表的p.address.city上创建索引来使此查询快速,这在JPA / MySql中是可能的吗?
我相信,如果您使用的是Hibernate,则可以使用其注释
@org.hibernate.annotations.Table(
name="table_name",
indexes = { @Index(name="idx_", columnNames = { "xxx", "xx" } ) }
)
或在org.hibernate.annotations
包中的列(放置在模型中)中注释的@Index
我希望这有帮助
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.