[데이터베이스]
[DB] postgreSQL json - Select 하기
미나미나미
2019. 10. 16. 22:24
# JSON 값 넣기 : https://minaminaworld.tistory.com/133
[DB] postgreSQL json - insert 하기
# 테이블 구조 - index : 인덱스 값 - 형식serial, - stuName : 학생 이름 - varchar , - stuGrade : 학생 학년 - varchar, - stuInfo : 학생 정보 - json -- Drop table -- DROP TABLE "testGroup".teststudentin..
minaminaworld.tistory.com
# 테이블 구조
- index : 인덱스 값 - 형식serial,
- stuName : 학생 이름 - varchar ,
- stuGrade : 학생 학년 - varchar,
- stuInfo : 학생 정보 - json
-- Drop table
-- DROP TABLE "testGroup".teststudentinfo;
CREATE TABLE "testGroup".teststudentinfo (
"index" serial NOT NULL,
"stuName" varchar NULL,
"stuGrade" varchar NULL,
"stuInfo" json NULL
);
-- Permissions
ALTER TABLE "testGroup".teststudentinfo OWNER TO postgres;
GRANT ALL ON TABLE "testGroup".teststudentinfo TO postgres;
# 학생 중에서 address가 '인천광역시'인 사람.
-- # ->> 표시를 통해서 json 내부의 값을 비교할 수 있다.
select * from "testGroup".teststudentinfo as t where t."stuInfo"->>'address' = '인천광역시';
# 전체 학생들의 학년과 주소만을 표시
select "index" as index, "stuName" as name, "stuInfo"->'address' as Address from "testGroup".teststudentinfo as t ;
# 학생들 중 json 값중 specific 키 값이 없는 사람들
select * from "testGroup".teststudentinfo as t where t."stuInfo" ->> 'specific' is null;
# 학생 중에 preUnivercity 값을 갖고 있는 사람 중에 경영학과인 사람
select * from "testGroup".teststudentinfo as t where t."stuInfo" -> 'preUnivercity' ->> 'major' = '경영학과';