β SQLμμ λ μ§ κ΅¬νκΈ°
SQLμ λ μ§ ν¨μλ μ¬μ©νλ λ°μ΄ν°λ² μ΄μ€ μμ€ν μ λ°λΌ λ€λ₯Ό μ μμ΅λλ€. μ¬κΈ°μμλ λνμ μΌλ‘ MySQLκ³Ό Oracle, SQL Server κΈ°μ€μΌλ‘ μκ°ν©λλ€.
π νμ¬ λ μ§ κ΅¬νκΈ°
DBMS |
νμ¬ λ μ§ ν¨μ |
|---|---|
MySQL |
|
Oracle |
|
SQL Server |
|
— MySQL
SELECT CURDATE();
— Oracle
SELECT SYSDATE FROM DUAL;
— SQL Server
SELECT GETDATE();
π λ μ§ λνκ³ λΉΌκΈ°
DBMS |
μ¬μ©λ² μμ |
|---|---|
MySQL |
|
Oracle |
|
SQL Server |
|
π μ€λ (leap year) νλ¨ λ°©λ²
μ€λ μ **”4λ‘ λλμ΄ λ¨μ΄μ§λ©΄μ 100μΌλ‘λ λλμ΄λ¨μ΄μ§μ§ μκ±°λ, 400μΌλ‘ λλμ΄λ¨μ΄μ§λ ν΄”**μ λλ€.
π SQLλ‘ μ€λ ꡬνκΈ° (MySQL μμ)
SELECTYEAR,CASEWHEN (YEAR % 4 = 0 AND YEAR % 100 != 0) OR (YEAR % 400 = 0)THEN ‘μ€λ ’ELSE ‘νλ ’END AS μ€λ μ¬λΆFROM (SELECT 2024 AS YEAR UNION ALLSELECT 2025 UNION ALLSELECT 1900 UNION ALLSELECT 2000) AS YEARS; |
π Oracle μμ
β οΈ μ£Όμν μ
-
DBMSλ³ ν¨μ μ°¨μ΄
λ μ§ κ³μ° ν¨μλ νμμ λ°μ΄ν°λ² μ΄μ€λ§λ€ λ€λ₯΄λ―λ‘, μ¬μ© μ€μΈ μμ€ν μ 곡μ λ¬Έμλ₯Ό μ°Έκ³ ν΄μΌ ν©λλ€. -
μ€λ νλ¨μ μ§μ μ°μ°μΌλ‘ ꡬνν΄μΌ ν¨
λλΆλΆμ DBλIS_LEAP_YEAR()κ°μ λ΄μ₯ ν¨μκ° μκΈ° λλ¬Έμ μμμ μ§μ μμ±ν΄μΌ ν©λλ€. -
λ μ§ ν¬λ§· ν΅μΌ
YYYY-MM-DDλλYYYY/MM/DDλ± λ μ§ νμμ΄ μΌκ΄λμ§ μμΌλ©΄ μ€λ₯κ° λ°μν μ μμΌλ―λ‘, ν¬λ§·μ νμ λͺ μνκ±°λ λ³νν΄ μ¬μ©νλ κ²μ΄ μ’μ΅λλ€. -
νμμ‘΄ κ³ λ €
νΉνGETDATE(),SYSDATEλ±μ μλ²μ μκ°λλ₯Ό κΈ°μ€μΌλ‘ νλ―λ‘, νμμ‘΄μ΄ μ€μν μμ€ν μμλCURRENT_TIMESTAMP AT TIME ZONEλ±μ νμ©ν΄μΌ ν©λλ€.