Sequelize.js Sequelize-有许多慢抓取,其中有许多关系
我有一个实体,上面有5个Sequelize.js Sequelize-有许多慢抓取,其中有许多关系,sequelize.js,Sequelize.js,我有一个实体,上面有5个和多个 @Table class Book extends Model<Book> { @ForeignKey(() => Person) @Column authorId: number; @BelongsTo(() => Person) author: Person; } @Table class Person extends Model<Person> { @HasMany(()
和多个
@Table
class Book extends Model<Book> {
@ForeignKey(() => Person)
@Column
authorId: number;
@BelongsTo(() => Person)
author: Person;
}
@Table
class Person extends Model<Person> {
@HasMany(() => Book)
writtenBooks: Book[];
@HasMany(() => Car)
cars: Car[];
@HasMany(() => Cat)
cats: Cat[];
}
是否可以强制查询按子查询获取,以获得结果中准确的行数。
有哪些选项可以加快速度
谢谢包括您的查询…@doublesharp-添加了感谢您是否需要返回这些记录的任何复杂数据?返回多少个结果?您可以使用raw:true
使结果不解析为实例,您可以尝试在连接上设置required:false
,使其成为左连接。否则,您可能需要配置文件以查看哪个部分速度慢,可能是数据库需要索引、更多内存,etc@doublesharpraw:true
使hasOne速度更快,我正在使用它。当涉及到多个时,raw:true
没有效果,required:false
也没有效果。我不介意把结果弄平,但这对“hasMany”没有帮助
.findOn({where:{id}, include:['cats','cars','writtenBooks']});