表
import { Column, Entity, ManyToOne, PrimaryGeneratedColumn } from "typeorm";
import { UserEntity } from "./user.entity";
@Entity('content_1')
export class Content {
@PrimaryGeneratedColumn()
id: number;
@Column()
name: string
// 本表多个 查询 user表一个
@ManyToOne(() => UserEntity, user => user.content)
user: UserEntity
}
外联
LEFT JOIN
外联。如果user里面没有值,也会返回content数据
return await getRepository(Content)
.createQueryBuilder('content')
.leftJoinAndSelect('content.user','user') // 外联
.where('content.name = :name',{name:333})
.getMany()
// 查询到的数据
{
"code": 2000,
"message": "请求成功!",
"time": "2021-03-21T05:32:08.898Z",
"data": [
{
"id": 3,
"name": "333",
"user": null
}
]
}
内联
INNER JOIN
内联,如果user里面没有数据,则不显示content数据
return await getRepository(Content)
.createQueryBuilder('content')
.innerJoinAndSelect('content.user','user') // 内联
.where('content.name = :name',{name:333})
.getMany()
// 查询到的结果
{
"code": 2000,
"message": "请求成功!",
"time": "2021-03-21T05:33:56.349Z",
"data": []
}