drizzle-team/drizzle-orm

[BUG]:

开放

#1,826 创建于 2024年1月23日

 (8 条评论) (9 个反应) (1 位负责人)TypeScript (357 个派生)batch import
good first issuehas-primprovementpriorityqb/crud

仓库指标

星标
 (16,414 个星标)
PR 合并指标
 (PR 指标待抓取)

描述

What version of drizzle-orm are you using?

0.29.3

What version of drizzle-kit are you using?

n/a

Describe the Bug

Conditional helper functions such as isNull, isNotNull, exists, notExists cannot be used within a query select, without returning an unknown type.

const results = await db
    .select({
      id: table.id,
      has_title_orm: isNotNull(table.name),
      has_title_sql: sql<boolean>`${table.name} IS NOT NULL`,
    })
    .from(table);

  results[0].has_title_orm; // unknown type
  results[0].has_title_sql; // boolean type

Expected behavior

The sql wrapper used should be able to be typed for these boolean returns. I can imagine that there's a circumstance where you might not want to, given the fact these query helpers can be used in other places?

Environment & setup

Example Stackblitz: https://stackblitz.com/edit/typescript-5bbctn?file=index.ts

贡献者指南