반응형
긴 텍스트 열이 있는 테이블을 JSON 배열로 변환
마리아를 쓰고 있어요.DB 10.3, 표가 있습니다.
CREATE TABLE user(id INT NOT NULL AUTO_INCREMENT, name VARCHAR(100) NOT NULL, parameters longtext, PRIMARY KEY(id));
행 포함:
INSERT INTO user VALUES (1, 'name1', '{"number": 1, "text": "some text"}'), (2, 'name2', '{"number": 2, "text": "some more text"}');
테이블을 반환하는 쿼리를 작성하려고 합니다.JSON
물건.지금까지 나는
SELECT CONCAT(
'[',
GROUP_CONCAT(JSON_OBJECT('id',id,'name',name,'parameters', parameters)),
']'
)
FROM user;
그러나 이 결과는 다음과 같습니다.
[
{"id": 1,
"name": "name1",
"parameters": "{\"number\": 1, \"text\": \"some text\"}"
},
{
"id": 2,
"name": "name2",
"parameters": "{\"number\": 2, \"text\": \"some more text\"}"
}
]
제대로 된 JSON이 아닙니다.무엇을 바꾸면 살 수 있을까요?parameters
올바르게 포맷되어 있습니까?
제가 원하는 것은 다음과 같습니다.
[
{
"id": 1,
"name": "name1",
"parameters": {
"number": 1,
"text": "some text"
}
},
{
"id": 2,
"name": "name2",
"parameters": {
"number": 2,
"text": "some more text"
}
}
]
감사해요.
MariaDB에 고유하고 MySQL에 존재하지 않는 Just 함수는 다음 항목에 적용될 수 있습니다.parameters
기둥.
SELECT CONCAT(
'[',
GROUP_CONCAT(JSON_OBJECT('id',id,
'name',name,'parameters',
JSON_COMPACT(parameters))),
']'
) AS "JSON Value"
FROM user
언급URL : https://stackoverflow.com/questions/65159801/convert-table-to-json-array-with-longtext-column
반응형
'it-source' 카테고리의 다른 글
null은 객체입니까? (0) | 2022.10.30 |
---|---|
Synology NAS의 속편을 통해 Mariadb에 연결 (0) | 2022.10.30 |
.rar, .zip 파일 MIME 유형 (0) | 2022.10.30 |
Magento - 특정 속성 값을 가진 제품 검색 (0) | 2022.10.30 |
HTML 버튼을 사용하여 JavaScript 함수 호출 (0) | 2022.10.30 |