![[PostgreSQL] ν¨μ(Function)μ μ μ λ° μμΈ μ¬μ©λ² (λ€μν μμ )](/images/posts/46/img.png)
[PostgreSQL] ν¨μ(Function)μ μ μ λ° μμΈ μ¬μ©λ² (λ€μν μμ )
1. PostgreSQL Functionμ΄λ? SQL ν¨μλ μμμ SQLλ¬Έλ€μ μ€ννκ³ λ§μ§λ§ 쿼리μ κ²°κ³Όλ₯Ό λ°ννλ€. λ¨μν ννμ ν¨μλ λ§μ§λ§ 쿼리μ 첫 λ²μ§Έ rowκ° λ¦¬ν΄λλ€. (order by λ₯Ό μ¬μ©νμ§ μλ κ²½μ° λ€μ€ rowμ 첫 λ²μ§Έ νμ λ³λ μ μλμ§ μκΈ°μ κ²°κ³Ό rowκ° λ§€λ² λ€λ₯Ό μ μλ€.) λ§μ§λ§ μΏΌλ¦¬κ° rowλ₯Ό νλλ λ°ννμ§ μμ κ²½μ° nullμ΄ λ¦¬ν΄λλ€. SQL ν¨μλ ν¨μμ λ¦¬ν΄ μ νμ νΉμ νμ μ μ§ν© (SET)μΌλ‘ μ μΈνκ±°λ, ν μ΄λΈλ‘ μ μΈνμ¬ λ°νν μ μλ€. μ΄ κ²½μ°μλ λ§μ§λ§ 쿼리μ λͺ¨λ ROWκ° λ¦¬ν΄λλ€. SQLν¨μμ bodyλ μΈλ―Έμ½λ‘ (;)μΌλ‘ ꡬλΆλ SQLꡬ문μ μ§ν©μ΄μ΄μΌλ§ νλ€. λ§μ§λ§ ꡬ문 λ€μ μΈλ―Έμ½λ‘ (;)μ μλ΅νμ¬λλλ€. ν¨μκ° voidλ₯Ό 리ν΄νλ κ²μΌλ‘ μ μΈλμ§ μμλ€λ©΄, λ§μ§λ§ ꡬ문μ λ°νμ μ΄ μ‘΄μ¬νλ select, insert, update, delete μ¬μΌλ§ νλ€. λͺ¨λ μ’ λ₯μ SQL μΈμ΄μ λͺ λ Ή λͺ¨μμ ν¨ν€μ§ λμ΄ ν¨μλ‘ μ μλ μ μλ€. select쿼리 μΈμλ insert, update, delete, merge λ±μ λ°μ΄ν° μμ 쿼리 λ° κΈ°ν SQLμ ν¬ν¨ν μ μμ§λ§, νΈλμμ μ μ΄ λͺ λ Ή( ex. commit, savepoint) λ° vacutaion λ±μ μΌλΆ μ νΈλ¦¬ν° λͺ λ Ήμ μ¬μ©ν μ μλ€. SQLμ΄ μλμ νμ§λ§ νΉμ κ°μ 리ν΄νμ§ μλ SQL ν¨μλ₯Ό μ μνκ³ μΆλ€λ©΄, voidλ₯Ό 리ν΄νλ κ²μΌλ‘ μ μν μ μλ€. βΆΒ 1-1. Function κ°λ¨ μμ λ€μμ emp ν μ΄λΈμμ μμμ salaryλ₯Ό μμ νλ ν¨μμ΄λ€. ...
![[Spring] λ¨μ ν
μ€νΈ, JUnitμ κ°λ
λ° λ¨μ ν
μ€νΈ μ½λ μμ± λ°©λ²](/images/posts/45/img.png)
![[PostgreSQL] λͺ
μμ JOIN μ λ‘ νλλ(Planner) μ μ΄, μ±λ₯ ν₯μ](/images/posts/44/img.png)
![[Spring] μ€νλ§ μ»¨ν
μ΄λ(Spring container)μ κ°λ
](/images/posts/43/img.png)
![[Spring] IoC(μ μ΄μ μμ ) & DI(μμ‘΄μ± μ£Όμ
)μ κ°λ
](/images/posts/42/img.png)