반응형

전체 글 145

BigDecimal 함수 사용법

Java에서 Double타입으로 계산을 하면 계산 차이에 따른 오류가 발생하기 때문에 금액이나 소수점 이하 계산은 BigDecimal이 필수적으로 사용해야 합니다. BigDecimal 많이 사용하는 함수 및 사용예시는 아래와 같이. 1. 기본 상수 많이 사용하는 0,1,10은 기본상수로 제공합니다. // 0 BigDecimal.ZERO // 1 BigDecimal.ONE // 10 BigDecimal.TEN 2. BigDecimal 초기화 2가지 방법이 있는데 개인적으로는 아래 방법을 주로 사용합니다. // 0.1 new BigDecimal("0.1"); // 0.1 BigDecimal.valueOf(0.1); 3. 비교 연산 == 연산은 오류가 발생하며 equals 는 소수점 아래자리 까지 같아야 tr..

STUDY/IT 2022.03.08

ORACLE Window function 함수 (rank, dense_rank, row_number...)

Oracle에서는 다른 DBMS와 같이 Window Function이 있음(분석 함수라고도 불림) Inline view를 이용해 작성해야 하는 행간 비교, 연산등이 해당 함수로 편하게 구현 가능함. 1. RANK - 특정 칼럼에 대한 순위를 구하는 함수. PARTITION 을 사용하여 특정 범위 내에 순위를 구할 수 있음 SELECT JOB, ENAME, RANK() OVER (ORDER BY SAL DESC) ALL_RANK, -- 전체 EMP에 대한 연봉 순위 RANK() OVER (PARTITION BY JOB ODER BY SAL DESC) JOB_RANK -- 각 JOB별 EMP에 대한 연봉 순위 FROM EMP; 2. DENSE_RANK - RANK와 다르게 동일 등수를 하나의 등수로 취급 e..

STUDY/IT 2021.05.24

오라클 테이블 변경(ORACLE, ALTER/DROP/TRUNCATE TABLE)

기존에 생성된 테이블에 대해 변경하고자 할때는 ALTER TABLE 명령어를 사용한다. 1. 컬럼 추가/삭제/변경 -- 컬럼 추가 ALTER TABLE [테이블명] ADD [컬럼명] DATATYPE; -- 컬럼 삭제 ALTER TABLE [테이블명] DROP COLUMN [컬럼명]; -- 컬럼 변경 ALTER TABLE [테이블명] MODIFY ([컬럼명] DATATYPE [DEFAULT 형식] [제약조건]; - 컬럼을 추가하면 항상 제일 뒤로 컬럼이 들어감 - 컬럼변경시에는 기존 컬럼에 데이터가 있으면 데이터에 따라 변경이 불가할 수 있음(ex. 데이터 길이 축소) 2. 제약조건 추가/삭제 -- 제약조건 추가 ALTER TABLE [테이블명] ADD CONSTRAINT [제약조건명] [제약조건] ([칼..

STUDY/IT 2021.05.13

오라클 테이블 생성 (Oracle, CREATE TABLE)

테이블 생성 구문은 아래와 같음 CREATE TABLE [테이블명] ( [칼럼명 1] DATATYPE [DEFAULT 형식] [칼럼명 2] DATATYPE [DEFAULT 형식] . . . ) DATATYPE은 CHAR(size), VARCHAR2(size), DATE, TIMESTAMP, NUMBER 등을 입력 하면 된다 VARCHAR2(size [BYTE | CHAR]) NVARCHAR2(size) NUMBER[(precision [, scale]]) LONG DATE BINARY_FLOAT BINARY_DOUBLE RAW(size) LONG RAW ROWID CHAR [(size [BYTE | CHAR])] NCHAR[(size)] CLOB NCLOB BLOB BFILE TIMESTAMP [(fra..

STUDY/IT 2021.05.13

[SQLD] 데이터 모델과 성능

- 성능 데이터 모델링 고려사항 a. 데이터 모델링을 할 때 정규화를 정확하게 수행 b. 데이터 베이스 용량 산정을 수행 c. 데이터 베이스에 발생되는 트랜젝션의 유형 파악 d. 용량과 트랜젝션 유형에 따라 반정규화 수행 e. 이력모델의 조정. PK/FK 조정, 슈퍼타입/서브타입 조정 수행 f. 성능관점에서 데이터 모델 검증 - 반정규화 성능 저하 사례 1 : 2차 정규화를 통해 비효율이 발생하는 경우는 없을 수 있다 - 반정규화 성능 저하 사례 2 : 드라이빙 테이블에 대한 정규화 처리 - 반정규화 성능 저하 사례 3 : 중복속성코드 컬럼에 대해 자식 테이블로 별도 생성 - 함수적 종속성에 근거한 정규화 수행 - 반정규화 : 성능을 향상시키기 위해서 정규화된 데이터 모델에서 중복, 통합, 분리 등을 수..

STUDY/IT 2021.05.13

[SQLD] 데이터 모델링의 이해 2

- 엔티티의 개념 : 실체, 객체, 업무에 필요하고 유용한 정보를 저장하고 관리하기 위한 집합적인 것 - 엔터티의 특징 a. 반드시 해당 업무에서 필요하고 관리하고자 하는 정보 b. 유일 식별자에 의해 식별 가능해야 함 c. 영속적으로 존재하는 인스턴스의 집합 d. 엔터티는 업무 프로세스에 의해 이용되어야 함 e. 엔터티는 반드시 속성이 있어야 함 f. 엔터티는 다른 엔터티와 최소 한 개 이상의 관계가 있어야 함 - 엔터티의 분류 a. 유무형에 따른 분류 : 유형엔터티, 개념엔터티, 사건엔터티 b. 발생시점에 따른 분류 : 기본엔터티, 중심엔터티, 행위엔터티 - 속성의 정의 : 업무에서 필요로 함, 더이상 의미가 분리되지 않음, 엔터티를 설명하고 인스턴스의 구성요소가 됨 - 엔터티, 인스턴스, 속성, 속..

STUDY/IT 2021.05.11

[SQLD] 데이터 모델링의 이해 1

I. 데이터 모델링의 이해 1. 모델링의 이해 - 모델링 : 가설적 또는 일정양식에 맞춘 표현, 복잡한 현실세계를 단순화 시켜 표현, 사물이나 사건에 대한 양상이나 관점을 명확하게 하는 것, 현실세계의 추상화된 반영 - 모델링의 특징 a. 추상화 : 현실세계를 일정한 양식에 맞추어 표현 b. 단순화 : 복잡한 현실세계를 약속된 규약에 의해 제한된 표기법이나 언어로 표현 c. 명확화 : 대상에 대한 애매모호함을 제거하고 정확하게 현상을 기술 - 모델링의 세가지 관점 : 데이터 관점, 프로세스 관점, 데이터와 프로세스 상관관점 - 데이터 모델링이란? a. 정보시스템을 구축하기 위한 데티어 관점의 업무 분석 기법 b. 현실세계의 데이터에 대해 약속된 표기법에 의해 표현하는 과정 c. 데이터베이스를 구축하기 위..

STUDY/IT 2021.05.10

Peak Design - cuff 카메라 핸드스트랩

기존에 있던 DSLR을 처분하고 가벼운 P&S(Point and Shoot) 카메라를 중고로 들였습니다. 뭐...고급 똑딱이 들였다는거죠. 새로운 기기를 들였으니 새로운 악세사리를 구매해야 합니다. 원래 있던 핸드스트랩이 저한테는 좀 짧아서 이런저런 스트랩 보다가 깔끔하고 기능성이 좋은 거 보다보니 Peak Design의 Cuff 제품을 구입했습니다. Peak Design의 Cuff 박스샷 핸드 스트랩 치고 가격(\44,000)이 좀 있다보니 박스도 괜찮네요. 앞에 뚜껑(?)을 열면 제품이 나옵니다. 이렇게 쓰세요 랑 이정도 버틸수 있습니다. 정보가 있습니다. 그나저나 비닐이나 플라스틱 커버가 하나 더 있을 것 같았는데 바로 아무것도 없네요. 내용물을 꺼내보면 본품, 추가 앵커(우상단), 파우치 입니다...

HOBBY/Other Things 2021.04.21

Google Pixel 4a 5G 개봉기

얼마전에 Google Pixel 4a 5G 를 직구로 구매했습니다. 구매 사유는... - 싼맛에 약정으로 샀던 Poco폰의 할부가 다 되었다 - 삼성페이를 안쓰기 때문에 궂이 갤럭시를 구매할 동기가 없었다. - 포코에 운영체제 MiUI를 쓰다보니 넥서스 5X때 순정 안드로이드가 그리웠다. (이것저것 기능 붙은 거 별로 안좋아함) - 사진을 좀 더 좋게 찍고 싶다. - 구글 포토 고화질 무제한이 없어지지만 픽셀 4a 5G, 5 까지는 제공한다 주말 끼고 이것저것 해서 1주일 좀 넘게 걸린 것 같습니다. Pixel 4a 5G랑 구글 케이스, 강화 유리를 같이 구매해서 한꺼번에 왔습니다. 아... 새 폰 박스 볼때의 기쁨이란! Team Pixel !! 우리나라에도 정발 좀.. 제발 씰을 뜯어봅니다. 뭔 개털같..

HOBBY/IT Things 2021.03.29

열대어 초보의 겨울 나기 끝

처음으로 열대어를 입양해서 어항 구성했습니다. 이번 겨울을 보낸 후기(?)를 적어봅니다. 기존에 어항셋트에 포함된 측면 여과기는 물살이 너무 세서 열대어들이 제대로 휴식을 못한다고 나와서 걸이식 여과기로 변경했습니다. 그렇지 않을 것 같지만 더 큰 어항을 들이면 걸이식여과기 + 측면여과기로 구성하면 될 것 같습니다. 지난번에 2박 3일간 집을 비워놨더니 추워진 방 온도에 물온도도 내려가 백점병이 걸렸더랬습니다. 암컷만 걸렸는데 아마 출산하고 기력이 낮아져서 걸린 것 같았습니다. 3마리를 하늘나라 보내고 부랴부랴 히터를 구매해 저렇게 걸어놨습니다. 보시다시피 수컷 두마리에 테트라 2마리에 하늘나라 간 암컷이 남긴 새끼들이 나름 잘 크고 있습니다. 원래는 돌과 구조물, 인공수초도 없었는데 이리저리 도망치는 ..

HOBBY/MY AQUARIUM 2021.03.29