[ WITH [ RECURSIVE ] $with_query$ [ , ... ] ] INSERT INTO $table_name$ [ AS $alias$ ] DEFAULT VALUES [ ON CONFLICT [ $conflict_target$ ] $conflict_action$ ] [ RETURNING { * | { $output_expression$ [ [ AS ] $output_name$ ] } [ , ... ] } ] [ WITH [ RECURSIVE ] $with_query$ [ , ... ] ] INSERT INTO $table_name$ [ AS $alias$ ] [ ( $column_name$ [ , ... ] ) ] { VALUES ( { $expression$ | DEFAULT } [ , ... ] ) [ , ... ] | $query$ } [ ON CONFLICT [ $conflict_target$ ] $conflict_action$ ] [ RETURNING { * | { $output_expression$ [ [ AS ] $output_name$ ] } [ , ... ] } ] [ WITH [ RECURSIVE ] $with_query$ [ , ... ] ] INSERT INTO $table_name$ [ AS $alias$ ] [ ( $column_name$ [ , ... ] ) ] OVERRIDING { SYSTEM | USER } VALUE { $sub-SELECT$ | ( $sub-SELECT$ ) } [ ON CONFLICT [ $conflict_target$ ] $conflict_action$ ] [ RETURNING { * | { $output_expression$ [ [ AS ] $output_name$ ] } [ , ... ] } ] where $conflict_target$ is: ( { { $index_column_name$ | ( $index_expression$ ) } [ COLLATE $collation$ ] [ $opclass$ ] } [ , ... ] ) [ WHERE $index_predicate$ ] | ON CONSTRAINT $constraint_name$ where $conflict_action$ is: DO NOTHING | DO UPDATE SET { $column_name$ = { $expression$ | DEFAULT } | ( $column_name$ [ , ... ] ) = [ ROW ] ( { $expression$ | DEFAULT } [ , ... ] ) | ( $column_name$ [ , ... ] ) = ( $sub-SELECT$ ) } [ , ... ] [ WHERE $condition$ ]