のみ 私が考えることができる場所、%
標準のPostgresでは2倍になりますformat()
関数。動的SQLのクエリ文字列を生成するために一般的に使用されます。 ここで、SOの例を比較してください。
マニュアル :
モジュロ演算子%
動的なステートメントで!
彼らはカーテンの後ろで動的SQLを実行しているのではないかと思います-記事のために一般化して単純化しました。 (シーケンスのスキーマ修飾名は'insta5.table_id_seq'
です。 テーブルには「table」という名前は付けられません。)その過程で、モジュロ演算子を「エスケープ解除」するのを忘れていました。
実際に実行しているのは、次のとおりです。
EXECUTE format($$SELECT nextval('%I') %% 1024$$, seq_name)
INTO seq_id;