postgresql - 如何使用orderby和limit获取相关数据?
问题描述
我在我的 NodeJs 服务器中使用 TypeORM 和 PostgreSQL。我有:
@Entity('tickets')
export class Ticket {
@PrimaryGeneratedColumn()
id: number;
@Column('int')
from: number;
@Column()
ownerName: string;
@Column({ default: 'new' })
status: 'new' | 'processing' | 'closed';
@Column()
title: string;
@OneToMany((type) => Message, (message) => message.ticket)
messages: Message[];
}
@Entity('messages')
export class Message {
@PrimaryGeneratedColumn()
id: number;
@Column('int')
from: number;
@Column('int')
to: number;
@Column()
message: string;
@Column({ default: 'new' })
status: string;
@CreateDateColumn()
date: Date;
@ManyToOne((type) => Ticket, (ticket) => ticket.messages)
ticket: Ticket;
}
我正在尝试使用最后一条消息获取一组票,并认为使用 orberby 消息日期和限制(1),但是
return await this.ticketRepo
.createQueryBuilder('ticket')
.where('ticket.status = :new', { new: 'new' })
.orWhere('ticket.status = :processing', { processing: 'processing' })
.leftJoinAndSelect('ticket.messages', 'messages')
.getMany();
使用 .order() 或 .limit() 适用于“tickets”,但我需要将它用于ticket.messages!
上面的代码将返回一个包含所有消息的票证数组,但我只需要从票证中获取最后一条消息,我该怎么做?
解决方案
推荐阅读
- c# - Newtonsoft.Json.Jobject.parse:未终止的字符串。预期的分隔符位置 32767
- jquery - 具有匹配字符串的 jQuery 选择属性
- python - urdu 字符串看起来相同,但相比之下发现不相等的 python3
- python - 从 JSON 获取服务器 ID
- java - 防止过多的注册请求
- android - 我的应用程序自动启动和关闭
- c# - C# XML 反序列化不返回列表类型的元素
- ruby-on-rails - Rails5:如何从 API 数据格式化货币值
- javascript - 函数式编程函数节奏
- python - 沿特定维度从 ndarray 中减去矩阵而不重塑