【发布时间】:2021-10-31 20:42:22
【问题描述】:
我有一个实体:
@Entity()
export class Training {
@PrimaryGeneratedColumn()
id: number;
@Column('jsonb')
workoutExercises: Exercise[];
}
运动实体:
@Entity()
export class Exercise {
@PrimaryGeneratedColumn()
id: number;
@Column()
name: string;
}
数据示例:
[
{
"workoutName": "Monday",
"workoutExercises": [
{
"id": 1,
"sets": 4,
"weight": 100,
"repetitions": 10
}
],
},
{
"workoutName": "Sunday",
"workoutExercises": [
{
"id": 2,
"sets": 4,
"weight": 100,
"repetitions": 10
}
],
}
]
我想找到 id 为 1 的实体。
在 abdul Samad 回答之后,我尝试了这个:
this.createQueryBuilder('training')
.where(`:exerciseId IN ("training"."workoutExercises"->>id)`, {
exerciseId,
})
.getMany();
这会返回一个空数组。应该返回一些东西。
【问题讨论】: