PostgreSQL에서는 쿼리 결과에서 테이블 이름을 동적으로 생성해야 하는 시나리오가 발생할 수 있습니다. . 이는 PL/PgSQL과 함께 EXECUTE 문을 활용하여 달성할 수 있습니다.
이를 달성하려면 다음 단계를 수행할 수 있습니다.
DO 블록 또는 PL/PgSQL의 동적 SQL 문 함수:
DO $$ BEGIN EXECUTE format( 'CREATE TABLE %I AS SELECT * FROM backup', 'backup_' || to_char(CURRENT_DATE, 'yyyy-mm-dd') ); END; $$ LANGUAGE plpgsql;
형식 지정자 활용:
format() 함수는 %I(식별자) 및 %L(리터럴)을 제공합니다. 식별자와 리터럴을 각각 적절하게 인용하기 위한 형식 지정자입니다.
이 예에서는 %I는 테이블 이름 'backup_'을 둘러쌉니다 || to_char(CURRENT_DATE, 'yyyy-mm-dd')를 큰따옴표로 묶어 식별자로 올바르게 인식되도록 합니다.
다음 단계를 수행하면 PostgreSQL의 쿼리에서 반환된 문자열을 사용하여 동적으로 테이블을 생성할 수 있습니다.
위 내용은 문자열을 테이블 이름으로 사용하여 PostgreSQL 테이블을 동적으로 생성하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!