728x90

SQL 13

FLOOR와 TRUNC 의 차이

FLOOR는 '대상 값보다 작은 정수중 가장 큰 정수' 를 반환하는 내림으로 작동하고,TRUNC는 말 그대로 소숫점 뒷 자리를 없는 것처럼 만드는 차이가 있다. 이렇게, 대상 숫자가 양의 실수일때는 둘 다 똑같이 동작한다.소숫점이 달려있는 실수보다 작은 정수 중 가장 큰 수를 구하기 위해서는 소숫점을 버리면 되기 때문이다.  하지만 대상이 음의 실수라면 둘은 다른 결과를 반환한다-123.52와 같이 음의 실수에 각각 TRUNC , FLOOR를 적용하게 되면TRUNC의 경우 소숫점 자체를 잘라버려서 정수인 -123만 남게 된다. FLOOR의 경우 -123.52 보다 '작은 수 중 가장 큰 정수' 를 찾기 때문에,단순히 .52를 버리는 것이 아닌 -124를 반환하게 된다.  또 TRUNC의 경우 앞의 예제에..

SQL/SQLD학습 2024.02.01

RTRIM, LTRIM의 부가 기능

기본적으로 RTRIM, LTRIM 등은 공백을 제거하는 용도로 사용한다. 추가로 ORACLE에서는 조금 더 확장된 사용법이 있다. RTRIM(문자열) : 기본 기능. 오른쪽 공백 제거RTRIM(문자열, '특정 문자') : 오른쪽에서 한 글자씩 비교하며 특정 문자일 경우 제거, 아닐 경우 멈춤. LTRIM도 동일하지만 왼쪽에서 진행하게 된다.여기서 주의할 점은 '한 글자씩 비교' 한다는 점이다. 신기해서 직접 테스트해본 결과를 사진으로 정리하겠다. 먼저 COL1에  '  cececece' 라는 값을 테스트하기 위해 넣어주었다. 앞에 공백 2칸이 존재한다.   여기에 단순히 LTRIM(대상, 조건)을 걸면, 아무일도 일어나지 않는다.왜냐면 첫 번째 칸이 ' '(공백)이기 때문이다.LTRIM(문자열) 일 경우..

SQL/SQLD학습 2024.02.01

엔티티와 속성

일반적으로 한 개의 엔티티는 두 가지 이상의 속성을 갖는다.또 한 개의 속성이 두 개 이상의 속성값을 가지지 않도록 하는 것이 바람직하다.(제1 정규형) 속성은 더 이상 쪼개지지 않는 단위여야 한다. 고려할 점 .엔티티의 개념 상 가질 수 있는 속성이라도 업무 프로세스에 필요하지 않을 것으로 판단되는 경우 속성을 추가하지 않는 것을 있음을 고려해야 한다. ex)학생 엔티티에 '취미' 라는 속성은 엔티티의 성격 상 추가 가능한 속성일 수 있다. 하지만 업무 프로세스에서 학생의 취미를 바탕으로 어떠한 작업도 하지 않을 계획이라면, 굳이 취미라는 속성을 추가할 필요는 없다. 반대로 말하면 당장은 아니더라도 추후에 취미를 바탕으로 특정 업무(취미 기반 동아리 활동 추천 등)를 진행할 계획이 있다면 미리 추가해둘..

SQL/SQLD학습 2024.01.25
728x90