Cara mencari perkataan dalam lajur 2 repositori berbeza menggunakan satu pertanyaan (MySQL dengan TYPEORM dan Nestjs)
P粉122932466
P粉122932466 2024-02-26 15:52:00
0
1
272

Saya menggunakanMySQLdanTypeormdalam versi terkininestjsdan saya mempunyai entiti berikut:

shop.entity.ts:

@Entity() export class Shop { @PrimaryGeneratedColumn("uuid") id: string; @Column({ unique: true, nullable: false }) name: string; @Column({ nullable: true }) description: string; @Column({ default: "" }) image_url: string; @Column({ default: true }) is_active: boolean; @Column({ default: false }) is_special: boolean; @Column({ nullable: false, default: () => "CURRENT_TIMESTAMP" }) created_at: Date; }

offer.entity.ts

@Entity() export class Offer { @PrimaryGeneratedColumn("uuid") id: string; @Column({ nullable: false }) name: string; @Column({ nullable: false }) fabric: string; @Column({ nullable: false }) code: string; @Column({ nullable: false }) start_date: Date; @Column({ nullable: false }) end_date: Date; @Column({ default: "" }) description: string; @Column({ nullable: false, default: () => "CURRENT_TIMESTAMP" }) created_at: Date; }

shop.service.ts Tapis pertanyaan

async filter(filter: FilterShopDto) { const queryBuilder = this.shopRepository .createQueryBuilder("shop") .where( `shop.description LIKE :description`, { description: filter.description ? `%${filter.description}%` : "%", }, ) .orderBy("shop.created_at", "DESC") .skip(filter.skip) .take(filter.take) }

offer.service.ts Penapis sebut harga

async filter(filter: FilterOfferDto) { const queryBuilder = this.offerRepository .createQueryBuilder("offer") .where( " offer.description LIKE :description", { description: filter.description ? `%${filter.description}%` : "%", }, ) .orderBy( "offer.created_at", "DESC", ) .skip(filter.skip) .take(filter.take) }

Setiap pertanyaan berfungsi dengan baik tetapi apa yang saya mahu lakukan ialah menggabungkan dua pertanyaan ini menjadi satu pertanyaan supaya saya boleh mendapatkan hasil carian daripada kedai dan menawarkan serta mengisih rekod dan kemudian memohon langkau dan terimanya.Adakah ada cara untuk melakukannya?

P粉122932466
P粉122932466

membalas semua (1)
P粉410239819

TypeORMmembolehkan anda menggunakan sebarang pertanyaan yang anda mahukan. GunakanentityManager.query()di sini ialahdokumentasi. p>

    Muat turun terkini
    Lagi>
    kesan web
    Kod sumber laman web
    Bahan laman web
    Templat hujung hadapan
    Tentang kita Penafian Sitemap
    Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!