반응형
외부 API 호출에 따른 LOG데이터를 DB에 저장하는경우, JSON 형식으로 그 데이터를 저장하는 경우가 있다.
이때 JSON형식 데이터의 값을 뽑아내는 쿼리이다.
하기와 같은 테이블과 JSON데이터가 있다고 가정하고, 데이터 추출하는 쿼리를 작성한다.
CREATE TABLE JSON_DATA
(
KEY_VALUE VARCHAR2(10)
, SEND_DATA VARCHAR2(2000)
);
{"BarcodeNumber":"","PurchaseAmount":"100","StandardProductCode":""}
* 추출 쿼리
SELECT JSON_VALUE(A.SEND_DATA, '$.BarcodeNumber') AS BARCODE_NUMBER
, JSON_VALUE(A.SEND_DATA, '$.PurchaseAmount') AS PURCHASE_AMOUNT
FROM JSON_DATA A;
형식은 간단하다.
JSON_VALUE( 컬럼, '$.추출JSON_KEY' )
당연한 얘기지만 JSON KEY가 다를 경우 추출되지 않으며, NULL이 리턴된다.
반응형
'2_개발노트' 카테고리의 다른 글
[DB] 트랜잭션 격리수준 (Transaction Isolation level) (0) | 2024.05.07 |
---|---|
[오라클] ORA-01438:이 열에 대해 지정된 전체 자릿수보다 큰 값이 허용됩니다. (0) | 2022.01.21 |
[오라클] Number 타입 이란? (0) | 2021.10.01 |
[오라클] ORA-01012 : not logged on (0) | 2021.09.30 |
[오라클] ORA-12170: TNS: 접속 시간 초과가 발생함 에러 (0) | 2021.09.30 |