본문 바로가기

카테고리 없음

Mariadb JSON_DATA 형식 사용방법

Mariadb JSON_DATA 형식 사용방법


#등록방법

*Table  column 필수항목을 마춰줘야합니다.


BULD_PK           건물PK  

CAMPUS_PK       시설물명  

FOLDER_PK        시설물

UPPER_FLT_PK    건물면적   

FLT_NM             대지면적 

FLT_TYPE_CD      건물높이    

DEL_YN             비고 

COMPANY_PK    삭제여부       

REG_ID             도로명주소(전체)  

REG_DT            도로명주소  

UPD_ID            행정구역코드   

UPD_DT           도로명코드   




insert into TABLE명 VALUES (

BULD_PK,

CAMPUS_PK,          

FOLDER_PK,          

UPPER_FLT_PK,        

FLT_NM,               

FLT_TYPE_CD,          

DEL_YN,               

COMPANY_PK,           

REG_ID,               

REG_DT,               

UPD_ID,               

PD_DT,     

json_object (사용하고싶은 항목들   '이름' , '이현우' '나이' , '28' )) ;  //  json object ( ' , ' , ' ') 다운표형식을 마춰줘야합니다.



#실제 등록 JSON _ SQL문 (Mariadb 10.3버전사용 )


* 건물 등록

insert into flt_buld VALUES (2, '도림빌딩', 'a', 10, 11, 12, '테스트', 'N', '경기도', '부천시', '소사구', '괴안동',

json_object('Name' , 'leeHyunWoo' , 'Sex' , 'M' , 'Phone' , '555-5555', 'Age' , '28')) ;


#실제 등록 JSON _ SQL문 (Mariadb 10.3버전사용 )

* 층  json type 등록 하기. 층

insert into flt_floor 

(

BULD_PK,

FOOLR_SE,

RM,

DEL_YN,

FLOOR_NM,

JSON_DATA

)

VALUES (

2 ,

'0', 

'0', 

'N',

'2층',

json_object('Name' , 'FLOOR' , 'Sex' , 'M' , 'Phone' , '555-5555', 'Age' , '28')) ;


#실제 등록 JSON _ SQL문 (Mariadb 10.3버전사용 )

* 호실  json type 등록 하기.

insert into flt_hosil 

(

FLOOR_PK,

HOSIL_SE_CD,

HOSIL_PRVUSE_AR,

HOSIL_CMNUSE_AR,

DEL_YN,

HOSIL_NA,

RM,

JSON_DATA

)

VALUES (

95,

'0',

10,

10,

'Y',

'3호실',

'TEST',

json_object('Name' , 'HOSIL' , 'Sex' , 'M' , 'Phone' , '555-5555', 'Age' , '30')) ;

)




#특정 key 값만 조회 하고자 할때 json_value 함수를 사용


select BULD_PK , json_value(JSON_DATA,'$.Name') 

AS Phone from flt_buld ;




#건물 층 , 호실  json type 조회 

SELECT 

A.BULD_PK ,

json_value(A.JSON_DATA,'$.Name') AS 'BULD_JSON', 

B.FLOOR_PK,

json_value(B.JSON_DATA,'$.Name') AS 'FLOOR_JSON',

C.HOSIL_PK,

json_value(C.JSON_DATA,'$.Name') AS 'HOSIL_JSON'

 

from flt_buld A LEFT OUTER JOIN flt_floor B ON A.BULD_PK = B.BULD_PK LEFT OUTER JOIN flt_hosil C


ON B.FLOOR_PK = C.FLOOR_PK;