본문 바로가기
728x90
반응형

IT/PostgreSQL29

[PostgreSQL] - 포스트그레 null 값 처리 하는 방법 COALESCE(), NULLIF() #포스트그레 null 값 처리 하는 방법 COALESCE(), NULLIF() #COALESCE('대상', result) -매개변수 2개 -COALESCE 함수는 대상값이 NULL이면 result값을 반환하고 NULL이 아니면 대상값 그대로 반환합니다. -- NULL입니다. select COALESCE(NULL, 'NULL입니다.'); -- NULL이 아닙니다. select COALESCE('NULL이 아닙니다.', 'NULL입니다.'); #COALESCE('대상', result1, result2, ...) -매개변수 3개이상 -COALESCE 함수는 대상값이 NULL이면 첫번째 결과인 result1값을 반환하고 NULL이 아니면 두번째 결과인 result2값을 반환합니다. -매개변수가 늘어날 경우 NU.. 2023. 1. 9.
[PostgreSQL] - 포스트그레 순위 함수 RANK(), DENSE_RANK() 함수 사용 방법 #포스트그레 순위 함수 RANK(), DENSE_RANK() 함수 사용 방법 -SQL에서 순위 함수 RANK(), DENSE_RANK() 함수들을 사용해서 데이터 들의 순서를 매길수 있습니다. #예시 테이블 데이터 -DDL CREATE TABLE public."member" ( "name" varchar(20) NULL, age numeric(10) NULL, phone_number numeric(20) NULL, address varchar(30) NULL, "deleteYn" bool NULL ); -INSERT DATA INSERT INTO public."member" ("name", age, phone_number, address, "deleteYn") VALUES('홍길동2', 20, 10123.. 2023. 1. 6.
[PostgreSQL] - 포스트그레 SQL Error [22P02]: ERROR: invalid input syntax for type 에러 해결 방법 #포스트그레 SQL Error [22P02]: ERROR: invalid input syntax for type integer 에러 해결 방법 #에러 발생 예시 -THEN의 반환타입은 숫자형인데 ELSE의 반환타입은 문자형이라서 발생하는 에러입니다. -CASE문에서 THEN과 ELSE 두 반환타입은 반드시 같아야합니다. -- 에러발생 SELECT CASE WHEN 'Y' = TRUE THEN 1 ELSE '거짓' END; -- 정상 SELECT CASE WHEN 'Y' = TRUE THEN '참' ELSE '거짓' END; SELECT CASE WHEN 'Y' = TRUE THEN 1 ELSE 0 END; 2023. 1. 4.
[PostgreSQL] - 포스트그레 bool 데이터 타입(Boolean Type) 사용 방법(true, false, 'y', 'n') #포스트그레 bool 데이터 타입(Boolean Type) 사용 방법(true, false, 'y', 'n') #PostgreSQL에는 bool Data Type이 존재합니다. -boolean 타입과 같은 의미입니다. 별칭으로 bool을 사용합니다. #PostgreSQL에서는 bool타입에 들어갈 수 있는 값들이 다른 RDBMS들에 비해 많은 것이 특징입니다. -해당 값들은 다 같은 의미를 가집니다. -대소문자를 구분하지 않습니다. -앞뒤 공백 전부 무시됩니다. (공백 있어도 bool타입으로 인정합니다.) -공식문서상에는 TRUE와 FALSE를 사용하는 것을 권장하고 있습니다. -SELECT 문으로 bool 타입 필드를 조회시 't' 또는 'f' 로 출력될 수 있습니다. #TRUE 참을 뜻하는 값들입니다.. 2023. 1. 4.
[PostgreSQL] - 포스트그레 CTID 를 사용해서 row 중복 제거하는 방법 (Oracle rowid와 차이점) #포스트그레 CTID 사용해서 row 중복 제거하는 방법 (Oracle rowid와 차이점) #CTID 란 ? -CTID는 테이블 내의 특정 row의 물리적 위치를 나타냅니다. -컬럼타입: tid(typle id) #Oracle의 rowid와 차이점 -oracle의 rowid는 해당 row가 delete 되거나 update 되어도 변하지 않습니다 -postgresql의 ctid는 오라클의 rowid와 달리 지속성을 가지고 있지 않으므로 update 시 값이 변합니다. #ctid 사용방법 -select 시 ctid를 추가해줍니다. select ctid, * from member; #결과 #ctid를 rownum으로 확인하는 방법 -postgresql row_number() 함수를 사용하여 rownum을 생.. 2022. 12. 27.
[PostgreSQL] - 포스트그레 밀리초(ms), 마이크로초(us) 추출하는 방법 #포스트그레 밀리초(ms), 마이크로초(us) 추출하는 방법 #PostgreSQL에서 TO_CHAR 함수를 사용해서 다양한 날짜와 시간들을 포맷팅하여 추출할 수 있습니다. -TO_CHAR( 시간, 형식) -MS: 밀리초 -US: 마이크로초 SELECT NOW() AS 현재시간, TO_CHAR(NOW(), 'MS') AS 밀리초, TO_CHAR(NOW(), 'US') AS 마이크로초; -결과 2022. 12. 4.
728x90
반응형