0
PostgreSQL 함수에서 왼쪽 조인을 사용하는 두 개의 테이블에서 사용자 정의 json을 빌드하려고 시도했지만 작동하지 않습니다.JSON 객체 내의 PostgreSQL 배열
테이블 구조 :
포스트
id | title | description
postPhoto
id | postId (FK) | name
JSON 예 :
{
postId: 1,
title: ''
description: '',
postPhotos: [
{id: 1, name: 'photo1.png'},
{id: 1, name: 'photo2.png'},
]
}
,
SQL 기능 :
$BODY$DECLARE
success boolean;
msg text;
var_most_recent json;
BEGIN
SELECT to_json(array_agg(t)) INTO var_most_recent FROM (
SELECT *
(SELECT to_json(array_agg(t)) FROM (
SELECT * FROM postPhoto AS PP WHERE post.id = PP."postId"
)t)
FROM post
ORDER BY id DESC LIMIT 10
)t;
success = TRUE; msg = 'Successfully Returned Post data';
RETURN (SELECT json_build_object(
'success', success,
'msg', msg,
'body', json_build_object(
'mostRecent', var_most_recent
)
));
END;$BODY$
이 작동하지만 난 그렇게 JSON이 같을 것이다 (10)에 의해 제한이 어디를 해달라고 원인 난, 배열에서 여러 게시물을 포장해야합니다 : 여기에 내가 그것을 할 것입니다 방법 HTTP ://pastebin.com/W3MSm8fh – Jazzy
문제가 없지만 다른 SELECT 쿼리로 래핑 할 수 있습니다. 업데이트 된 답변을 참조하십시오. – redneb
postphoto가 null이 아닌 게시물을 선택하도록 도와 줄 수 있습니까? – Jazzy