Drizzle 쿼리 μ νΈλ¦¬ν°
$count
db.$count()
λ count(*)
λ₯Ό νΈλ¦¬νκ² μ¬μ©ν μ μλ μ νΈλ¦¬ν° λνΌμ
λλ€. μ΄ μ°μ°μλ λ¨λ
μΌλ‘ μ¬μ©νκ±°λ μλΈμΏΌλ¦¬λ‘ νμ©ν μ μμ΄ λ§€μ° μ μ°ν©λλ€. λ μμΈν λ΄μ©μ GitHub ν λ‘ μμ νμΈν μ μμ΅λλ€.
const count = await db.$count(users);
// ^? number
const count = await db.$count(users, eq(users.name, "Dan")); // νν°μ ν¨κ» μ¬μ© κ°λ₯
select count(*) from "users";
select count(*) from "users" where "name" = 'Dan';
μ΄ κΈ°λ₯μ μλΈμΏΌλ¦¬μμ νΉν μ μ©ν©λλ€:
const users = await db.select({
...users,
postsCount: db.$count(posts, eq(posts.authorId, users.id)),
}).from(users);
κ΄κ³ν 쿼리μ ν¨κ» μ¬μ©νλ μμ :
const users = await db.query.users.findMany({
extras: {
postsCount: db.$count(posts, eq(posts.authorId, users.id)),
},
});