diff --git a/docs/content/flink/procedures.md b/docs/content/flink/procedures.md
index f5ed938f96be..cbbf88b32393 100644
--- a/docs/content/flink/procedures.md
+++ b/docs/content/flink/procedures.md
@@ -328,6 +328,35 @@ All available procedures are listed below.
not_matched_insert_values => '*')
+
+ | data_evolution_merge_into |
+
+ -- Use indexed argument
+ CALL [catalog].sys.data_evolution_merge_into('targetTable','targetAlias',
+ 'sourceSqls','sourceTable','mergeCondition','matchedUpdateSet',sinkParallelism)
+ -- Use named argument
+ CALL [catalog].sys.data_evolution_merge_into(
+ target_table => 'identifier',
+ target_alias => 'targetAlias',
+ source_sqls => 'sourceSqls',
+ source_table => 'sourceTable',
+ merge_condition => 'mergeCondition',
+ matched_update_set => 'matchedUpdateSet',
+ sink_parallelism => sinkParallelism)
+ |
+ To perform "MERGE INTO" syntax specially implemented for data-evolution tables. Please see data evolution for more information. |
+
+ -- for Flink 1.18
+ CALL [catalog].sys.data_evolution_merge_into('default.T', '', '', 'S', 'T.id=S.id', 'name=S.name', 2)
+ -- for Flink 1.19 and later
+ CALL [catalog].sys.data_evolution_merge_into(
+ target_table => 'default.T',
+ source_table => 'S',
+ merge_condition => 'T.id=S.id',
+ matched_update_set => 'name=S.name',
+ sink_parallelism => 2)
+ |
+