my sql 조회 필드 형식 이 json 일 때의 두 가지 조회 방식
id varchar(32)
info json
데이터:
id = 1
info = {"age": "18","disname":" "}
--------------------------------------------현재 info 에서 disanme 의 값 을 가 져 와 야 합 니 다.조회 방법 은 다음 과 같 습 니 다.
1.
select t.id,JSON_EXTRACT(t.info,'$.disname') as disname from tableName t where 1=1
결과:id=1,disname="소명"
이상 sql 에서 찾 아 낸 disname 값 은 더 블 따옴표 가 있 습 니 다.가끔 은 더 블 따옴표 가 필요 하지 않 습 니 다.이 때 는 다음 과 같은 방식 을 사용 해 야 합 니 다.
2.
select t.id,t.info ->> '$.disname' as disname from tableName t where 1=1
결과:
id = 1 , disname=
ps:다음은 my sql 조회 json 필드건표문
Create Table
CREATE TABLE `test` (
`id` int(10) ,
`user` json DEFAULT NULL COMMENT ' ',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8
데이터 삽입주의해 야 할 것 은 제 이 슨 데이터 밖 에 따옴표 가 필요 하 다 는 것 이다.
INSERT INTO test (id,USER) VALUES(1,'{"name": "tom", "age": 18, "money": 3000}');
INSERT INTO test (id,USER) VALUES(2,'{"name": "jack", "age": 20, "money": 100}');
INSERT INTO test (id,USER) VALUES(3,'{"name": "tony", "age": 21, "money": 100}');
INSERT INTO test (id,USER) VALUES(4,'{"name": "danny", "age": 21, "money": 20}');
INSERT INTO test (id,USER) VALUES(5,'{"name": "janny", "age": 23, "money": 20}');
표 데 이 터 는 다음 과 같다.검색 어
SELECT id,JSON_EXTRACT(USER,'$.name')FROM test;
다음은 검색 결과 입 니 다.총결산
위 에서 말 한 것 은 소 편 이 여러분 에 게 소개 한 my sql 조회 필드 유형 이 json 일 때의 두 가지 조회 방식 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 저 에 게 메 시 지 를 남 겨 주세요.소 편 은 제때에 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
만약 당신 이 본문 이 당신 에 게 도움 이 된다 고 생각한다 면,전 재 를 환영 합 니 다.번 거 로 우 시 겠 지만 출처 를 밝 혀 주 십시오.감사합니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
MySQL에서 JSON 인덱싱 - aarondfrancis사람들은 종종 MySQL로 JSON을 인덱싱할 수 없다고 말하지만 완전히 정확하지는 않습니다. MySQL로 JSON 열을 인덱싱하는 것은 완전히 가능합니다! 사람들은 종종 MySQL로 JSON을 인덱싱할 수 없다고 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.