TypeORM 选择 NULL 值

Posted

技术标签:

【中文标题】TypeORM 选择 NULL 值【英文标题】:TypeORM Select NULL Values 【发布时间】:2020-11-12 10:23:08 【问题描述】:

如何在 TypeORM 中按 NULL/NOT NULL 值过滤行?

const [sessions, sessionsCount] = await getRepository(Sessions)
    .createQueryBuilder()
    .where("session_email LIKE :session_email",  session_email: (`%$email%`) )
    .where("session_deleted_at = :session_deleted_at",  session_deleted_at: IsNull() )
    .skip(skip || 0)
    .take(take || 10)
    .getManyAndCount()

我试过了……

.where("session_deleted_at = :session_deleted_at",  session_deleted_at: IsNull() )

但它不起作用。我可以在文档中找到一些东西,但它正在使用 find()

const loadedPosts = await connection.getRepository(Post).find(
    title: IsNull()
);

【问题讨论】:

【参考方案1】:

更换你的线路:

.where("session_deleted_at = :session_deleted_at", session_deleted_at: IsNull() )

与:

.where("session_deleted_at is null")

TypeOrm 的 isNull() 函数不适用于 queryBuilder。

【讨论】:

以上是关于TypeORM 选择 NULL 值的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 typeorm 将可为空的数据库字段设置为 NULL?

SpyOn TypeORM 存储库更改单元测试 NestJS 的返回值

TypeORM QueryRunner 选择不同的

TypeORM - 重复键值违反唯一约束(可延迟 fk)

在 find() 中 TypeORM 查询相关的 oneToMany 值

TypeORM 在批量保存时抛出重复错误,而不是忽略或更新现有值