是否可以在unnest中使用数组_agg result?|PostgreSQL
我正试图从数组中向是否可以在unnest中使用数组_agg result?|PostgreSQL,sql,postgresql,Sql,Postgresql,我正试图从数组中向PostgreSQL表插入数据。我的下一个sql查询引发错误。为什么我不能在unest中使用ARRAY\u AGG INSERT INTO surveys_questions_relationship(survey_id, question_id) SELECT '9bef1274-f1ee-4879-a60e-16e94e88df38' ID, x FROM UNNEST( SELECT ARRAY_AGG (QUESTION_ID) FROM factors
PostgreSQL
表插入数据。我的下一个sql查询引发错误。为什么我不能在unest
中使用ARRAY\u AGG
INSERT INTO surveys_questions_relationship(survey_id, question_id)
SELECT '9bef1274-f1ee-4879-a60e-16e94e88df38' ID, x
FROM UNNEST(
SELECT ARRAY_AGG (QUESTION_ID)
FROM factors_questions_relationship
WHERE FACTOR_ID = 10
) x
UNNEST
内的子查询返回ID的列表{1,2,3,4,5,6}
。如何正确地将数组创建为unest
?我在您的语句中看不到聚合或unest的原因
你可以简单地写:
INSERT INTO surveys_questions_relationship(survey_id, question_id)
SELECT '9bef1274-f1ee-4879-a60e-16e94e88df38', QUESTION_ID
FROM factors_questions_relationship
WHERE FACTOR_ID = 10;
我看不出你的陈述中有什么原因会让人感到聚合或不安 你可以简单地写:
INSERT INTO surveys_questions_relationship(survey_id, question_id)
SELECT '9bef1274-f1ee-4879-a60e-16e94e88df38', QUESTION_ID
FROM factors_questions_relationship
WHERE FACTOR_ID = 10;
为什么要聚合这些值,然后立即取消它们的测试?为什么要聚合这些值,然后立即取消它们的测试?