...QueryBuilder
νμ
λ€μ λ
립 μ€νν 쿼리 λΉλ μΈμ€ν΄μ€μ ν¨κ» μ¬μ©νκΈ° μν κ²μ
λλ€. λ°μ΄ν°λ² μ΄μ€ 쿼리 λΉλλ μ΄λ€μ νμ ν΄λμ€μ΄λ―λ‘, μ΄λ€λ μ¬μ©ν μ μμ΅λλ€.
λμ 쿼리 λΉλ©
Drizzleμ λͺ¨λ 쿼리 λΉλλ κΈ°λ³Έμ μΌλ‘ SQLμ μ΅λν λ§μΆλ €κ³ νκΈ° λλ¬Έμ, λλΆλΆμ λ©μλλ ν λ²λ§ νΈμΆν μ μμ΅λλ€. μλ₯Ό λ€μ΄, SELECT
λ¬Έμμλ WHERE
μ μ΄ νλλ§ μμ μ μμΌλ―λ‘ .where()
λ©μλλ ν λ²λ§ νΈμΆν μ μμ΅λλ€:
μ΄μ ORM λ²μ μμλ μ΄λ¬ν μ νμ΄ κ΅¬νλμ§ μμκΈ° λλ¬Έμ, λ§μ μ¬μ©μλ€μ΄ μ¬λ¬ .where()
νΈμΆμ νλμ 쑰건μΌλ‘ βλ³ν©βν κ²μΌλ‘ κΈ°λνλ©° νΌλμ κ²ͺμμ΅λλ€.
μ΄λ¬ν λμμ μΌλ°μ μΈ μΏΌλ¦¬ λΉλ©, μ¦ μ 체 쿼리λ₯Ό ν λ²μ μμ±ν λ μ μ©ν©λλ€. νμ§λ§ 쿼리λ₯Ό λμ μΌλ‘ λΉλνλ €λ κ²½μ°, μλ₯Ό λ€μ΄ 쿼리 λΉλλ₯Ό λ°μμ μΆκ° κΈ°λ₯μ μ 곡νλ 곡μ ν¨μλ₯Ό μ¬μ©ν λ λ¬Έμ κ° λ©λλ€. μ΄ λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄ Drizzleμ 쿼리 λΉλμ νΉλ³ν βλμ β λͺ¨λλ₯Ό μ 곡νλ©°, μ΄ λͺ¨λμμλ λ©μλλ₯Ό μ¬λ¬ λ² νΈμΆν μ μμ΅λλ€. μ΄ λͺ¨λλ₯Ό νμ±ννλ €λ©΄ 쿼리 λΉλμμ .$dynamic()
μ νΈμΆν΄μΌ ν©λλ€.
νμ΄μ§ λ²νΈμ μ νμ μΈ νμ΄μ§ ν¬κΈ°λ₯Ό κΈ°λ°μΌλ‘ 쿼리μ LIMIT
κ³Ό OFFSET
μ μ μΆκ°νλ κ°λ¨ν withPagination
ν¨μλ₯Ό ꡬνν΄ λ³΄κ² μ΅λλ€:
withPagination
ν¨μλ μ λ€λ¦ ν¨μμ΄κΈ° λλ¬Έμ, 쿼리 λΉλμ κ²°κ³Ό νμ
μ μμ ν μ μμ΅λλ€. μλ₯Ό λ€μ΄ μ‘°μΈμ μΆκ°ν μ μμ΅λλ€:
μ΄λ PgSelect
μ κ°μ νμ
λ€μ΄ λμ 쿼리 λΉλ©μ μν΄ νΉλ³ν μ€κ³λμκΈ° λλ¬Έμ κ°λ₯ν©λλ€. μ΄λ¬ν νμ
λ€μ λμ λͺ¨λμμλ§ μ¬μ©ν μ μμ΅λλ€.
λ€μμ λμ 쿼리 λΉλ©μμ μ λ€λ¦ 맀κ°λ³μλ‘ μ¬μ©ν μ μλ λͺ¨λ νμ λͺ©λ‘μ λλ€:
Dialect | Type | |||
Query | Select | Insert | Update | Delete |
Postgres | PgSelect | PgInsert | PgUpdate | PgDelete |
PgSelectQueryBuilder | ||||
MySQL | MySqlSelect | MySqlInsert | MySqlUpdate | MySqlDelete |
MySqlSelectQueryBuilder | ||||
SQLite | SQLiteSelect | SQLiteInsert | SQLiteUpdate | SQLiteDelete |
SQLiteSelectQueryBuilder |