TypeORM find / findOne选项用于查找最新的实体

问题描述

现在我正在使用Typecript,Express.js,TypeORM

我想使用Repository.find(或Repository.findOne)在适合条件的实体中查找最新的ONE实体。

这是我的实体


import {
    Entity,CreateDateColumn,UpdateDateColumn,PrimaryGeneratedColumn,Column,BaseEntity,ManyToOne,} from "typeorm";

import { User } from "./user";
import { Product } from "./product";


@Entity()
export class Transaction extends BaseEntity {
    @PrimaryGeneratedColumn('increment',{ type: "int" })
    id: number;

    @Column()
    user_id: number;

    @Column()
    product_id: number;

    @Column({
        type: "enum",enum: PaymentMethod,default: PaymentMethod.EL
    })
    paymentMethod: PaymentMethod;

    @Column()
    paymentValue: number;

    @Column()
    totalValue: number;

    @CreateDateColumn({ type: 'timestamp' })
    createdAt: Date;

    @UpdateDateColumn({ type: 'timestamp' })
    updatedAt: Date;
}

这是我找到最新代码的代码(根据createdAt)

let alltransactions = await transactionRepository.find({ where: [ {user_id : ownership.user_id},{PaymentMethod: ownership.paymentMethod}]});
            

我试图使用查找符合条件的所有交易并按其排序(因此我将最新的交易放在第一个交易中)并获得第一个实体...!

我该如何解决?

解决方法

因此,您要返回与AND条件匹配的最后插入的行。

let alltransactions = await transactionRepository.findOne({
    where: [ {user_id : ownership.user_id},{PaymentMethod: ownership.paymentMethod}],order: { id: 'DESC' }
});

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...