あなたはこのようなことをすることができます:
with some_set as (
select set_config('search_path', '"1"', true)
)
select * from posts;
または単にSELECT
set_config()
を使用 CTEなしで電話をかけますが、これは一般的に次の理由で役に立ちません。
-
クエリのパーツの実行順序が望ましいという保証はありません(SQLは宣言型言語であることを忘れないでください。
https://www.google.com/search?q =postgresql + cte + order + not +guaranteed&oq =postgresql + cte + order +&aqs =chrome.1.69i57j69i59l2j69i64.6362j0j7&sourceid =chrome&ie =UTF-8 、および https://dba.stackexchange.com /questions/86263/managing-cte-execution-order-under-uncertainty ) -
AFAIK
SELECT
でDBロールを切り替える方法はありません 。