diff --git a/server/analyzer/assign_triggers.go b/server/analyzer/assign_triggers.go index bc06c69409..b7a5e333a2 100644 --- a/server/analyzer/assign_triggers.go +++ b/server/analyzer/assign_triggers.go @@ -95,6 +95,15 @@ func getTriggerInformation(ctx *sql.Context, node sql.Node) (sch sql.Schema, bef return nil, nil, nil, err } case *plan.Update: + // TODO: If there is a JoinNode in here, then don't bother calling GetUpdatable, because + // it doesn't currently return a type that can be used to query trigger information. + // We need to rework the plan.GetUpdatable() API to support returning multiple + // update targets and to return types that are compatible with the interfaces + // Doltgres needs in order to populate trigger information. + if hasJoinNode(node) { + return nil, nil, nil, nil + } + tbl, err = plan.GetUpdatable(node.Child) if err != nil { return nil, nil, nil, err @@ -168,6 +177,18 @@ func getTriggerInformation(ctx *sql.Context, node sql.Node) (sch sql.Schema, bef return tbl.Schema(), beforeTrigs, afterTrigs, nil } +// hasJoinNode returns true if |node| or any child is a JoinNode. +func hasJoinNode(node sql.Node) bool { + updateJoinFound := false + transform.Inspect(node, func(n sql.Node) bool { + if _, ok := n.(*plan.JoinNode); ok { + updateJoinFound = true + } + return !updateJoinFound + }) + return updateJoinFound +} + // getTriggerSource returns the trigger's source node. func getTriggerSource(node sql.Node) sql.Node { switch node := node.(type) { diff --git a/server/analyzer/assign_update_casts.go b/server/analyzer/assign_update_casts.go index d0b363ac50..5f2b098a40 100644 --- a/server/analyzer/assign_update_casts.go +++ b/server/analyzer/assign_update_casts.go @@ -15,8 +15,9 @@ package analyzer import ( - "github.com/cockroachdb/errors" + "fmt" + "github.com/cockroachdb/errors" "github.com/dolthub/go-mysql-server/sql" "github.com/dolthub/go-mysql-server/sql/analyzer" "github.com/dolthub/go-mysql-server/sql/expression" @@ -49,6 +50,24 @@ func AssignUpdateCasts(ctx *sql.Context, a *analyzer.Analyzer, node sql.Node, sc if !ok { return nil, transform.NewTree, errors.Errorf("UPDATE: assumption that Foreign Key child is always UpdateSource is incorrect: %T", child.OriginalNode) } + newUpdateSource, err := assignUpdateCastsHandleSource(updateSource) + if err != nil { + return nil, transform.NewTree, err + } + newHandler, err := child.WithChildren(newUpdateSource) + if err != nil { + return nil, transform.NewTree, err + } + newUpdate, err = update.WithChildren(newHandler) + if err != nil { + return nil, transform.NewTree, err + } + case *plan.UpdateJoin: + updateSource, ok := child.Child.(*plan.UpdateSource) + if !ok { + return nil, transform.NewTree, fmt.Errorf("UPDATE: unknown source type: %T", child.Child) + } + newUpdateSource, err := assignUpdateCastsHandleSource(updateSource) if err != nil { return nil, transform.NewTree, err diff --git a/server/ast/update.go b/server/ast/update.go index a1ac8c2848..562871da6f 100644 --- a/server/ast/update.go +++ b/server/ast/update.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -39,9 +37,6 @@ func nodeUpdate(ctx *Context, node *tree.Update) (update *vitess.Update, err err } } - if len(node.From) > 0 { - return nil, errors.Errorf("FROM is not yet supported") - } with, err := nodeWith(ctx, node.With) if err != nil { return nil, err @@ -50,6 +45,27 @@ func nodeUpdate(ctx *Context, node *tree.Update) (update *vitess.Update, err err if err != nil { return nil, err } + + tableExprs := vitess.TableExprs{table} + if len(node.From) > 0 { + vitessTableExprs := make(vitess.TableExprs, len(node.From)) + for i, tableExpr := range node.From { + vitessTableExpr, err := nodeTableExpr(ctx, tableExpr) + if err != nil { + return nil, err + } + vitessTableExprs[i] = vitessTableExpr + } + + tableExprs = []vitess.TableExpr{ + &vitess.JoinTableExpr{ + Join: vitess.JoinStr, + LeftExpr: buildJoinTableExpressionTree(ctx, vitessTableExprs), + RightExpr: table, + }, + } + } + exprs, err := nodeUpdateExprs(ctx, node.Exprs) if err != nil { return nil, err @@ -67,7 +83,7 @@ func nodeUpdate(ctx *Context, node *tree.Update) (update *vitess.Update, err err return nil, err } return &vitess.Update{ - TableExprs: vitess.TableExprs{table}, + TableExprs: tableExprs, With: with, Exprs: exprs, Where: where, @@ -76,3 +92,23 @@ func nodeUpdate(ctx *Context, node *tree.Update) (update *vitess.Update, err err Returning: returningExprs, }, nil } + +// buildJoinTableExpressionTree returns an expression tree of JoinTableExprs with |tableExprs| as the +// leaf nodes. If |tableExprs| is empty or nil, then nil is returned. +func buildJoinTableExpressionTree(ctx *Context, tableExprs vitess.TableExprs) vitess.TableExpr { + switch len(tableExprs) { + case 0: + return nil + case 1: + return tableExprs[0] + case 2: + return &vitess.JoinTableExpr{ + Join: vitess.JoinStr, + LeftExpr: tableExprs[0], + RightExpr: tableExprs[1], + } + default: + subtree := buildJoinTableExpressionTree(ctx, tableExprs[0:2]) + return buildJoinTableExpressionTree(ctx, append(tableExprs[2:], subtree)) + } +} diff --git a/testing/generation/command_docs/output/update_test.go b/testing/generation/command_docs/output/update_test.go index 9826ffd101..0e452d86b3 100644 --- a/testing/generation/command_docs/output/update_test.go +++ b/testing/generation/command_docs/output/update_test.go @@ -166,7 +166,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name SET ( column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item"), - Parses("UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( SELECT 1 ) FROM from_item"), + Converts("UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( SELECT 1 ) FROM from_item"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name ) = ( SELECT 1 ) FROM from_item"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item"), @@ -190,7 +190,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) , ( column_name , column_name ) = ROW ( expression ) FROM from_item , from_item"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ROW ( expression ) FROM from_item , from_item"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ROW ( expression , expression ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item"), - Parses("UPDATE table_name alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item"), + Converts("UPDATE table_name alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ROW ( expression , DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item"), Unimplemented("UPDATE ONLY table_name AS alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ( expression , expression ) , ( column_name , column_name ) = ( DEFAULT ) FROM from_item , from_item"), @@ -233,7 +233,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) , ( column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item"), Unimplemented("UPDATE ONLY table_name SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item"), - Parses("UPDATE table_name alias SET ( column_name ) = ( expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item"), + Converts("UPDATE table_name alias SET ( column_name ) = ( expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ( expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET ( column_name , column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item"), @@ -317,7 +317,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) WHERE condition"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ROW ( expression ) FROM from_item WHERE condition"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition"), - Parses("UPDATE table_name alias SET ( column_name ) = ( SELECT 1 ) FROM from_item WHERE condition"), + Converts("UPDATE table_name alias SET ( column_name ) = ( SELECT 1 ) FROM from_item WHERE condition"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET ( column_name ) = ( expression ) , column_name = expression FROM from_item WHERE condition"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET ( column_name ) = ( DEFAULT ) , column_name = expression FROM from_item WHERE condition"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET ( column_name , column_name ) = ROW ( DEFAULT ) , column_name = expression FROM from_item WHERE condition"), @@ -327,9 +327,9 @@ func TestUpdate(t *testing.T) { Unimplemented("UPDATE table_name * AS alias SET ( column_name ) = ROW ( DEFAULT ) , ( column_name ) = ( expression ) FROM from_item WHERE condition"), Unimplemented("UPDATE ONLY table_name alias SET ( column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( expression ) FROM from_item WHERE condition"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ( expression ) FROM from_item WHERE condition"), - Parses("UPDATE table_name SET ( column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( expression ) FROM from_item WHERE condition"), + Converts("UPDATE table_name SET ( column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( expression ) FROM from_item WHERE condition"), Unimplemented("UPDATE table_name * SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( expression ) FROM from_item WHERE condition"), - Parses("UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( expression ) FROM from_item WHERE condition"), + Converts("UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( expression ) FROM from_item WHERE condition"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( expression ) FROM from_item WHERE condition"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( expression ) FROM from_item WHERE condition"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ( expression , expression ) , ( column_name ) = ROW ( expression ) FROM from_item WHERE condition"), @@ -440,7 +440,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item WHERE condition"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ROW ( expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ROW ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition"), - Parses("UPDATE table_name SET column_name = DEFAULT , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition"), + Converts("UPDATE table_name SET column_name = DEFAULT , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ( expression ) , ( column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition"), @@ -801,7 +801,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ROW ( expression , expression ) , column_name = DEFAULT FROM from_item RETURNING *"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ROW ( DEFAULT , expression ) , column_name = DEFAULT FROM from_item RETURNING *"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ROW ( expression , DEFAULT ) , column_name = DEFAULT FROM from_item RETURNING *"), - Parses("UPDATE table_name AS alias SET column_name = expression , ( column_name ) = ( expression ) FROM from_item RETURNING *"), + Converts("UPDATE table_name AS alias SET column_name = expression , ( column_name ) = ( expression ) FROM from_item RETURNING *"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ROW ( expression , DEFAULT ) , ( column_name ) = ( expression ) FROM from_item RETURNING *"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ( expression ) FROM from_item RETURNING *"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ( expression ) , ( column_name , column_name ) = ( expression ) FROM from_item RETURNING *"), @@ -874,7 +874,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * SET ( column_name ) = ROW ( expression , expression ) , ( column_name ) = ( SELECT 1 ) FROM from_item RETURNING *"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name SET ( column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( SELECT 1 ) FROM from_item RETURNING *"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ROW ( DEFAULT , expression ) , ( column_name ) = ( SELECT 1 ) FROM from_item RETURNING *"), - Parses("UPDATE table_name alias SET column_name = expression , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item RETURNING *"), + Converts("UPDATE table_name alias SET column_name = expression , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item RETURNING *"), Unimplemented("UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item RETURNING *"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item RETURNING *"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ROW ( expression , DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item RETURNING *"), @@ -890,9 +890,9 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ROW ( DEFAULT ) , column_name = DEFAULT FROM from_item , from_item RETURNING *"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name alias SET ( column_name ) = ROW ( DEFAULT , expression ) , column_name = DEFAULT FROM from_item , from_item RETURNING *"), Unimplemented("UPDATE ONLY table_name SET ( column_name , column_name ) = ( expression , DEFAULT ) , column_name = DEFAULT FROM from_item , from_item RETURNING *"), - Parses("UPDATE table_name AS alias SET ( column_name ) = ( SELECT 1 ) , column_name = DEFAULT FROM from_item , from_item RETURNING *"), + Converts("UPDATE table_name AS alias SET ( column_name ) = ( SELECT 1 ) , column_name = DEFAULT FROM from_item , from_item RETURNING *"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET column_name = expression , ( column_name ) = ( expression ) FROM from_item , from_item RETURNING *"), - Parses("UPDATE table_name alias SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name ) = ( expression ) FROM from_item , from_item RETURNING *"), + Converts("UPDATE table_name alias SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name ) = ( expression ) FROM from_item , from_item RETURNING *"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ( expression ) , ( column_name , column_name ) = ( expression ) FROM from_item , from_item RETURNING *"), Unimplemented("UPDATE table_name alias SET ( column_name , column_name ) = ROW ( expression , expression ) , ( column_name , column_name ) = ( expression ) FROM from_item , from_item RETURNING *"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( expression ) FROM from_item , from_item RETURNING *"), @@ -906,7 +906,7 @@ func TestUpdate(t *testing.T) { Unimplemented("UPDATE ONLY table_name alias SET ( column_name ) = ( SELECT 1 ) , ( column_name ) = ROW ( expression ) FROM from_item , from_item RETURNING *"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * alias SET column_name = expression , ( column_name , column_name ) = ROW ( expression ) FROM from_item , from_item RETURNING *"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ROW ( expression ) FROM from_item , from_item RETURNING *"), - Parses("UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING *"), + Converts("UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING *"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING *"), Unimplemented("UPDATE table_name * alias SET ( column_name , column_name ) = ( expression ) , ( column_name , column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING *"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * SET ( column_name ) = ROW ( expression ) , ( column_name , column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING *"), @@ -941,7 +941,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ( expression ) , ( column_name , column_name ) = ROW ( DEFAULT , expression ) FROM from_item , from_item RETURNING *"), Unimplemented("UPDATE ONLY table_name SET ( column_name ) = ROW ( expression , expression ) , ( column_name , column_name ) = ROW ( DEFAULT , expression ) FROM from_item , from_item RETURNING *"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ROW ( expression , DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT , expression ) FROM from_item , from_item RETURNING *"), - Parses("UPDATE table_name SET column_name = expression , ( column_name ) = ( expression , DEFAULT ) FROM from_item , from_item RETURNING *"), + Converts("UPDATE table_name SET column_name = expression , ( column_name ) = ( expression , DEFAULT ) FROM from_item , from_item RETURNING *"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ROW ( expression , DEFAULT ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item , from_item RETURNING *"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item RETURNING *"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ( expression , expression ) , ( column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item RETURNING *"), @@ -1053,7 +1053,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ( DEFAULT ) , ( column_name ) = ( SELECT 1 ) WHERE condition RETURNING *"), Unimplemented("UPDATE table_name alias SET ( column_name , column_name ) = ROW ( expression , expression ) , ( column_name ) = ( SELECT 1 ) WHERE condition RETURNING *"), Unimplemented("UPDATE table_name * AS alias SET ( column_name , column_name ) = ( expression , expression ) , ( column_name , column_name ) = ( SELECT 1 ) WHERE condition RETURNING *"), - Parses("UPDATE table_name alias SET ( column_name , column_name ) = ( expression ) FROM from_item WHERE condition RETURNING *"), + Converts("UPDATE table_name alias SET ( column_name , column_name ) = ( expression ) FROM from_item WHERE condition RETURNING *"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ROW ( DEFAULT ) FROM from_item WHERE condition RETURNING *"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET column_name = expression , column_name = expression FROM from_item WHERE condition RETURNING *"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , column_name = expression FROM from_item WHERE condition RETURNING *"), @@ -1077,7 +1077,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item WHERE condition RETURNING *"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT ) FROM from_item WHERE condition RETURNING *"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT ) FROM from_item WHERE condition RETURNING *"), - Parses("UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT ) FROM from_item WHERE condition RETURNING *"), + Converts("UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT ) FROM from_item WHERE condition RETURNING *"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ROW ( expression , DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item WHERE condition RETURNING *"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * SET column_name = expression , ( column_name , column_name ) = ( DEFAULT ) FROM from_item WHERE condition RETURNING *"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * alias SET column_name = expression , ( column_name , column_name ) = ( DEFAULT ) FROM from_item WHERE condition RETURNING *"), @@ -1089,7 +1089,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT ) FROM from_item WHERE condition RETURNING *"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name SET ( column_name ) = ( expression , expression ) , ( column_name , column_name ) = ROW ( DEFAULT ) FROM from_item WHERE condition RETURNING *"), Unimplemented("UPDATE ONLY table_name alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ROW ( DEFAULT ) FROM from_item WHERE condition RETURNING *"), - Parses("UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression ) , ( column_name ) = ( expression , expression ) FROM from_item WHERE condition RETURNING *"), + Converts("UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression ) , ( column_name ) = ( expression , expression ) FROM from_item WHERE condition RETURNING *"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ( expression , DEFAULT ) , ( column_name ) = ( expression , expression ) FROM from_item WHERE condition RETURNING *"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ( expression , expression ) FROM from_item WHERE condition RETURNING *"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ROW ( expression , expression ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item WHERE condition RETURNING *"), @@ -1622,8 +1622,8 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ROW ( expression , DEFAULT ) FROM from_item RETURNING colname"), Unimplemented("UPDATE table_name alias SET ( column_name ) = ROW ( expression , expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name alias SET ( column_name , column_name ) = ROW ( expression , expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname"), - Parses("UPDATE table_name alias SET ( column_name ) = ( expression , expression ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname"), - Parses("UPDATE table_name AS alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname"), + Converts("UPDATE table_name alias SET ( column_name ) = ( expression , expression ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname"), + Converts("UPDATE table_name AS alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ROW ( DEFAULT , expression ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * SET ( column_name , column_name ) = ROW ( expression , DEFAULT ) , ( column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ROW ( expression ) , ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname"), @@ -1648,7 +1648,7 @@ func TestUpdate(t *testing.T) { Unimplemented("UPDATE ONLY table_name AS alias SET ( column_name ) = ROW ( expression ) , ( column_name , column_name ) = ( expression ) FROM from_item , from_item RETURNING colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) , ( column_name , column_name ) = ( expression ) FROM from_item , from_item RETURNING colname"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( expression ) FROM from_item , from_item RETURNING colname"), - Parses("UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( expression ) FROM from_item , from_item RETURNING colname"), + Converts("UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( expression ) FROM from_item , from_item RETURNING colname"), Unimplemented("UPDATE table_name * AS alias SET ( column_name ) = ( expression , expression ) , ( column_name ) = ROW ( expression ) FROM from_item , from_item RETURNING colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ROW ( expression , expression ) , ( column_name ) = ROW ( expression ) FROM from_item , from_item RETURNING colname"), Unimplemented("UPDATE table_name * AS alias SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ROW ( expression ) FROM from_item , from_item RETURNING colname"), @@ -1672,7 +1672,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ROW ( expression , expression ) , ( column_name ) = ROW ( expression , expression ) FROM from_item , from_item RETURNING colname"), Unimplemented("UPDATE ONLY table_name alias SET column_name = expression , ( column_name , column_name ) = ROW ( expression , expression ) FROM from_item , from_item RETURNING colname"), Unimplemented("UPDATE table_name AS alias SET column_name = expression , ( column_name , column_name ) = ROW ( expression , expression ) FROM from_item , from_item RETURNING colname"), - Parses("UPDATE table_name SET ( column_name ) = ( expression ) , ( column_name ) = ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname"), + Converts("UPDATE table_name SET ( column_name ) = ( expression ) , ( column_name ) = ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ( expression ) , ( column_name ) = ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname"), Unimplemented("UPDATE table_name * alias SET ( column_name ) = ROW ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname"), @@ -1830,14 +1830,14 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname"), Unimplemented("UPDATE table_name * alias SET ( column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname"), - Parses("UPDATE table_name SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname"), + Converts("UPDATE table_name SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname"), Unimplemented("UPDATE table_name * alias SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ROW ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname"), Unimplemented("UPDATE ONLY table_name AS alias SET ( column_name ) = ROW ( DEFAULT ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ROW ( expression , expression ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ROW ( expression , expression ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname"), Unimplemented("UPDATE ONLY table_name SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname"), - Parses("UPDATE table_name AS alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname"), + Converts("UPDATE table_name AS alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ROW ( expression ) , ( column_name ) = ROW ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname"), Unimplemented("UPDATE table_name * SET ( column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ROW ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname"), @@ -2247,7 +2247,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ( expression ) , ( column_name ) = ( DEFAULT ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item RETURNING colname output_name"), - Parses("UPDATE table_name SET ( column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( DEFAULT ) FROM from_item RETURNING colname output_name"), + Converts("UPDATE table_name SET ( column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( DEFAULT ) FROM from_item RETURNING colname output_name"), Unimplemented("UPDATE table_name * alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * SET ( column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ( DEFAULT ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ROW ( expression ) , ( column_name ) = ROW ( DEFAULT ) FROM from_item RETURNING colname output_name"), @@ -2257,7 +2257,7 @@ func TestUpdate(t *testing.T) { Unimplemented("UPDATE ONLY table_name alias SET ( column_name ) = ( expression , expression ) , ( column_name , column_name ) = ROW ( DEFAULT ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name ) = ( expression , expression ) FROM from_item RETURNING colname output_name"), - Parses("UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item RETURNING colname output_name"), + Converts("UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ROW ( DEFAULT ) , ( column_name ) = ROW ( expression , expression ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression , expression ) , ( column_name ) = ROW ( expression , expression ) FROM from_item RETURNING colname output_name"), @@ -2269,7 +2269,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ( expression ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname output_name"), - Parses("UPDATE table_name AS alias SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname output_name"), + Converts("UPDATE table_name AS alias SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET column_name = DEFAULT , ( column_name ) = ROW ( DEFAULT , expression ) FROM from_item RETURNING colname output_name"), @@ -2281,7 +2281,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name alias SET ( column_name ) = ( DEFAULT ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET column_name = expression , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ROW ( expression ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item RETURNING colname output_name"), - Parses("UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item RETURNING colname output_name"), + Converts("UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item RETURNING colname output_name"), Unimplemented("UPDATE table_name * AS alias SET ( column_name ) = ROW ( expression , DEFAULT ) , ( column_name ) = ROW ( expression , DEFAULT ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ROW ( expression , DEFAULT ) , ( column_name ) = ROW ( expression , DEFAULT ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ROW ( expression , DEFAULT ) FROM from_item RETURNING colname output_name"), @@ -2303,7 +2303,7 @@ func TestUpdate(t *testing.T) { Unimplemented("UPDATE ONLY table_name SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item RETURNING colname output_name"), - Parses("UPDATE table_name alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item RETURNING colname output_name"), + Converts("UPDATE table_name alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname output_name"), @@ -2315,7 +2315,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE table_name * SET ( column_name , column_name ) = ( expression , expression ) , ( column_name , column_name ) = ( expression ) FROM from_item , from_item RETURNING colname output_name"), Unimplemented("UPDATE ONLY table_name AS alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( expression ) FROM from_item , from_item RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( expression ) FROM from_item , from_item RETURNING colname output_name"), - Parses("UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( expression ) FROM from_item , from_item RETURNING colname output_name"), + Converts("UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( expression ) FROM from_item , from_item RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name ) = ROW ( expression ) FROM from_item , from_item RETURNING colname output_name"), Unimplemented("UPDATE ONLY table_name alias SET ( column_name , column_name ) = ( expression , expression ) , ( column_name , column_name ) = ROW ( expression ) FROM from_item , from_item RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET ( column_name , column_name ) = ( expression , expression ) , ( column_name , column_name ) = ROW ( expression ) FROM from_item , from_item RETURNING colname output_name"), @@ -2358,7 +2358,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item , from_item RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ROW ( expression ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item RETURNING colname output_name"), Unimplemented("UPDATE table_name alias SET ( column_name ) = ROW ( expression , expression ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item RETURNING colname output_name"), - Parses("UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item RETURNING colname output_name"), + Converts("UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ROW ( expression ) , ( column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ROW ( DEFAULT ) , ( column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item RETURNING colname output_name"), @@ -2386,7 +2386,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name SET ( column_name , column_name ) = ROW ( expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item RETURNING colname output_name"), - Parses("UPDATE table_name alias SET ( column_name ) = ( expression , expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item RETURNING colname output_name"), + Converts("UPDATE table_name alias SET ( column_name ) = ( expression , expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ( expression , expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item RETURNING colname output_name"), Unimplemented("UPDATE table_name * SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) WHERE condition RETURNING colname output_name"), @@ -2557,7 +2557,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ROW ( expression , expression ) , ( column_name , column_name ) = ROW ( DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ROW ( DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ROW ( expression , DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), - Parses("UPDATE table_name alias SET ( column_name ) = ( expression ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), + Converts("UPDATE table_name alias SET ( column_name ) = ( expression ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ROW ( expression ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ROW ( expression , expression ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ROW ( DEFAULT , expression ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), @@ -2565,7 +2565,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE table_name SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), Unimplemented("UPDATE ONLY table_name AS alias SET ( column_name ) = ROW ( expression , DEFAULT ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * SET ( column_name , column_name ) = ROW ( expression , DEFAULT ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), - Parses("UPDATE table_name alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), + Converts("UPDATE table_name alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), Unimplemented("UPDATE table_name SET ( column_name , column_name ) = ROW ( DEFAULT ) , ( column_name ) = ROW ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ROW ( DEFAULT ) , ( column_name ) = ROW ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name ) = ROW ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), @@ -2586,7 +2586,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ( expression , expression ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ( expression , expression ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ROW ( expression ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), - Parses("UPDATE table_name SET ( column_name ) = ( expression , expression ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), + Converts("UPDATE table_name SET ( column_name ) = ( expression , expression ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ROW ( expression , DEFAULT ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname output_name"), @@ -2996,7 +2996,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ROW ( expression ) FROM from_item , from_item RETURNING colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ROW ( expression , DEFAULT ) , ( column_name , column_name ) = ROW ( expression ) FROM from_item , from_item RETURNING colname AS output_name"), Unimplemented("UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ROW ( expression ) FROM from_item , from_item RETURNING colname AS output_name"), - Parses("UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name"), + Converts("UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name"), Unimplemented("UPDATE table_name SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET column_name = expression , ( column_name , column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET column_name = DEFAULT , ( column_name ) = ROW ( DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name"), @@ -3028,7 +3028,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * SET column_name = expression , ( column_name ) = ( expression , DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET column_name = expression , ( column_name ) = ( expression , DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name SET column_name = expression , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name"), - Parses("UPDATE table_name SET ( column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name"), + Converts("UPDATE table_name SET ( column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ROW ( expression , DEFAULT ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ROW ( expression , DEFAULT ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ( expression ) , ( column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name"), @@ -3052,11 +3052,11 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) , ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name"), - Parses("UPDATE table_name AS alias SET ( column_name ) = ( expression ) , ( column_name ) = ( SELECT 1 ) FROM from_item , from_item RETURNING colname AS output_name"), + Converts("UPDATE table_name AS alias SET ( column_name ) = ( expression ) , ( column_name ) = ( SELECT 1 ) FROM from_item , from_item RETURNING colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( SELECT 1 ) FROM from_item , from_item RETURNING colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * SET column_name = expression , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item RETURNING colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * SET ( column_name , column_name ) = ROW ( expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item RETURNING colname AS output_name"), - Parses("UPDATE table_name alias SET ( column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item RETURNING colname AS output_name"), + Converts("UPDATE table_name alias SET ( column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item RETURNING colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item RETURNING colname AS output_name"), Unimplemented("UPDATE ONLY table_name SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item RETURNING colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * SET ( column_name , column_name ) = ( expression , expression ) WHERE condition RETURNING colname AS output_name"), @@ -3147,13 +3147,13 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ( SELECT 1 ) WHERE condition RETURNING colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name alias SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ( SELECT 1 ) WHERE condition RETURNING colname AS output_name"), Unimplemented("UPDATE ONLY table_name SET ( column_name , column_name ) = ROW ( expression ) , ( column_name , column_name ) = ( SELECT 1 ) WHERE condition RETURNING colname AS output_name"), - Parses("UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT ) FROM from_item WHERE condition RETURNING colname AS output_name"), + Converts("UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT ) FROM from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("UPDATE table_name SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ( DEFAULT ) , column_name = expression FROM from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET column_name = expression , column_name = DEFAULT FROM from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ROW ( DEFAULT ) , column_name = DEFAULT FROM from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT , expression ) , column_name = DEFAULT FROM from_item WHERE condition RETURNING colname AS output_name"), - Parses("UPDATE table_name SET ( column_name ) = ( DEFAULT ) , ( column_name ) = ( expression ) FROM from_item WHERE condition RETURNING colname AS output_name"), + Converts("UPDATE table_name SET ( column_name ) = ( DEFAULT ) , ( column_name ) = ( expression ) FROM from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression , expression ) , ( column_name ) = ( expression ) FROM from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ( expression ) FROM from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("UPDATE table_name * alias SET ( column_name ) = ( expression , expression ) , ( column_name , column_name ) = ( expression ) FROM from_item WHERE condition RETURNING colname AS output_name"), @@ -3194,7 +3194,7 @@ func TestUpdate(t *testing.T) { Unimplemented("UPDATE table_name SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ROW ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ( expression ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ( expression , DEFAULT ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname AS output_name"), - Parses("UPDATE table_name AS alias SET column_name = expression , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname AS output_name"), + Converts("UPDATE table_name AS alias SET column_name = expression , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname AS output_name"), @@ -3222,7 +3222,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ( expression , expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ROW ( DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ROW ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name"), - Parses("UPDATE table_name alias SET ( column_name ) = ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name"), + Converts("UPDATE table_name alias SET ( column_name ) = ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET column_name = DEFAULT , column_name = expression FROM from_item , from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT ) , column_name = expression FROM from_item , from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ROW ( DEFAULT ) , column_name = expression FROM from_item , from_item WHERE condition RETURNING colname AS output_name"), @@ -3286,8 +3286,8 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE table_name alias SET column_name = DEFAULT , ( column_name , column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name SET ( column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name"), - Parses("UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name"), - Parses("UPDATE table_name AS alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name"), + Converts("UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name"), + Converts("UPDATE table_name AS alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("UPDATE table_name SET ( column_name ) = ROW ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ROW ( expression , expression ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name"), @@ -3633,7 +3633,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ROW ( expression , DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) RETURNING colname , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname , colname"), - Parses("UPDATE table_name SET column_name = expression , column_name = expression FROM from_item RETURNING colname , colname"), + Converts("UPDATE table_name SET column_name = expression , column_name = expression FROM from_item RETURNING colname , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET column_name = expression , column_name = expression FROM from_item RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , column_name = expression FROM from_item RETURNING colname , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ( expression ) , ( column_name ) = ( expression ) FROM from_item RETURNING colname , colname"), @@ -3654,7 +3654,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ROW ( expression , expression ) , ( column_name ) = ( DEFAULT ) FROM from_item RETURNING colname , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item RETURNING colname , colname"), - Parses("UPDATE table_name alias SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name ) = ( DEFAULT ) FROM from_item RETURNING colname , colname"), + Converts("UPDATE table_name alias SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name ) = ( DEFAULT ) FROM from_item RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name alias SET column_name = DEFAULT , ( column_name , column_name ) = ( DEFAULT ) FROM from_item RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( DEFAULT ) FROM from_item RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT ) FROM from_item RETURNING colname , colname"), @@ -3694,7 +3694,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET column_name = DEFAULT , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name alias SET ( column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname , colname"), - Parses("UPDATE table_name alias SET ( column_name ) = ( expression , expression ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname , colname"), + Converts("UPDATE table_name alias SET ( column_name ) = ( expression , expression ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname , colname"), @@ -3704,7 +3704,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ROW ( expression ) , ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET ( column_name ) = ( expression , DEFAULT ) , ( column_name ) = ( SELECT 1 ) FROM from_item RETURNING colname , colname"), Unimplemented("UPDATE table_name AS alias SET ( column_name ) = ROW ( expression , DEFAULT ) , ( column_name ) = ( SELECT 1 ) FROM from_item RETURNING colname , colname"), - Parses("UPDATE table_name AS alias SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name ) = ( SELECT 1 ) FROM from_item RETURNING colname , colname"), + Converts("UPDATE table_name AS alias SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name ) = ( SELECT 1 ) FROM from_item RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item RETURNING colname , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET ( column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name SET ( column_name ) = ( expression ) FROM from_item , from_item RETURNING colname , colname"), @@ -3863,7 +3863,7 @@ func TestUpdate(t *testing.T) { Unimplemented("UPDATE table_name * AS alias SET ( column_name ) = ( expression , DEFAULT ) , column_name = expression FROM from_item WHERE condition RETURNING colname , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression , expression ) , column_name = DEFAULT FROM from_item WHERE condition RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ( DEFAULT , expression ) , column_name = DEFAULT FROM from_item WHERE condition RETURNING colname , colname"), - Parses("UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT , expression ) , column_name = DEFAULT FROM from_item WHERE condition RETURNING colname , colname"), + Converts("UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT , expression ) , column_name = DEFAULT FROM from_item WHERE condition RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , column_name = DEFAULT FROM from_item WHERE condition RETURNING colname , colname"), Unimplemented("UPDATE ONLY table_name alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , column_name = DEFAULT FROM from_item WHERE condition RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , column_name = DEFAULT FROM from_item WHERE condition RETURNING colname , colname"), @@ -3910,7 +3910,7 @@ func TestUpdate(t *testing.T) { Unimplemented("UPDATE ONLY table_name SET ( column_name , column_name ) = ROW ( DEFAULT ) , ( column_name ) = ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET ( column_name ) = ( SELECT 1 ) , ( column_name ) = ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname , colname"), Unimplemented("UPDATE ONLY table_name SET ( column_name ) = ROW ( DEFAULT , expression ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname , colname"), - Parses("UPDATE table_name SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname , colname"), + Converts("UPDATE table_name SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ROW ( expression , DEFAULT ) , ( column_name ) = ROW ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ROW ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname , colname"), @@ -3926,7 +3926,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ( expression , expression ) , ( column_name ) = ROW ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) , ( column_name ) = ROW ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name alias SET ( column_name , column_name ) = ( expression ) , ( column_name , column_name ) = ROW ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname , colname"), - Parses("UPDATE table_name SET column_name = expression , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname , colname"), + Converts("UPDATE table_name SET column_name = expression , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET column_name = DEFAULT , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ROW ( expression , expression ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname , colname"), @@ -3972,7 +3972,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name SET ( column_name ) = ( expression , DEFAULT ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname , colname"), - Parses("UPDATE table_name SET column_name = expression , ( column_name , column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname , colname"), + Converts("UPDATE table_name SET column_name = expression , ( column_name , column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * alias SET column_name = expression , ( column_name , column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ( expression ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname , colname"), @@ -4592,7 +4592,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ( DEFAULT , expression ) , ( column_name ) = ROW ( expression ) FROM from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name ) = ROW ( expression ) FROM from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ROW ( expression ) FROM from_item WHERE condition RETURNING colname output_name , colname"), - Parses("UPDATE table_name SET ( column_name ) = ( DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname"), + Converts("UPDATE table_name SET ( column_name ) = ( DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("UPDATE ONLY table_name AS alias SET ( column_name ) = ( DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ROW ( DEFAULT ) , ( column_name ) = ROW ( DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ROW ( expression , DEFAULT ) , ( column_name ) = ROW ( DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname"), @@ -4629,7 +4629,7 @@ func TestUpdate(t *testing.T) { Unimplemented("UPDATE ONLY table_name AS alias SET ( column_name ) = ROW ( expression , expression ) , ( column_name , column_name ) = ROW ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("UPDATE ONLY table_name alias SET ( column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ROW ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname"), - Parses("UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname"), + Converts("UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ROW ( DEFAULT ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname"), @@ -4642,7 +4642,7 @@ func TestUpdate(t *testing.T) { Unimplemented("UPDATE table_name * alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ROW ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET ( column_name ) = ( expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname"), - Parses("UPDATE table_name alias SET ( column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname"), + Converts("UPDATE table_name alias SET ( column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * SET ( column_name , column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname"), @@ -4689,7 +4689,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ROW ( expression ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname"), - Parses("UPDATE table_name SET ( column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname"), + Converts("UPDATE table_name SET ( column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ROW ( DEFAULT , expression ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname"), @@ -4744,7 +4744,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ( expression , DEFAULT ) , ( column_name ) = ( SELECT 1 ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name ) = ( SELECT 1 ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname"), - Parses("UPDATE table_name SET column_name = DEFAULT , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname"), + Converts("UPDATE table_name SET column_name = DEFAULT , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET ( column_name ) = ( expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname"), @@ -5120,7 +5120,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ROW ( expression , DEFAULT ) FROM from_item RETURNING colname AS output_name , colname"), Unimplemented("UPDATE table_name * alias SET ( column_name ) = ROW ( expression , DEFAULT ) , ( column_name , column_name ) = ROW ( expression , DEFAULT ) FROM from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name SET column_name = expression , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname AS output_name , colname"), - Parses("UPDATE table_name AS alias SET ( column_name ) = ( expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname AS output_name , colname"), + Converts("UPDATE table_name AS alias SET ( column_name ) = ( expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname AS output_name , colname"), Unimplemented("UPDATE table_name * SET ( column_name ) = ROW ( expression , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname AS output_name , colname"), @@ -5149,7 +5149,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ROW ( DEFAULT ) , column_name = DEFAULT FROM from_item , from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * SET ( column_name ) = ( expression , expression ) , column_name = DEFAULT FROM from_item , from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT ) , ( column_name ) = ( expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), - Parses("UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name ) = ( expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), + Converts("UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name ) = ( expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * SET ( column_name ) = ( expression , expression ) , ( column_name ) = ( expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ROW ( expression , DEFAULT ) , ( column_name ) = ( expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), @@ -5167,7 +5167,7 @@ func TestUpdate(t *testing.T) { Unimplemented("UPDATE table_name * AS alias SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ROW ( expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), Unimplemented("UPDATE table_name * AS alias SET ( column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ROW ( expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ( DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name , colname"), - Parses("UPDATE table_name AS alias SET ( column_name ) = ( expression , expression ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name , colname"), + Converts("UPDATE table_name AS alias SET ( column_name ) = ( expression , expression ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * SET ( column_name , column_name ) = ROW ( expression , DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name , colname"), @@ -5182,7 +5182,7 @@ func TestUpdate(t *testing.T) { Unimplemented("UPDATE table_name AS alias SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ( expression ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), - Parses("UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression , expression ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), + Converts("UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression , expression ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ( SELECT 1 ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET column_name = expression , ( column_name , column_name ) = ( expression , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), Unimplemented("UPDATE table_name * SET ( column_name , column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), @@ -5192,7 +5192,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT ) , ( column_name ) = ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name SET ( column_name ) = ROW ( expression , expression ) , ( column_name ) = ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), - Parses("UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression , expression ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), + Converts("UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression , expression ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ROW ( expression , expression ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * SET ( column_name ) = ROW ( DEFAULT , expression ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name SET ( column_name ) = ROW ( expression ) , ( column_name ) = ROW ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname"), @@ -5748,7 +5748,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ( expression , DEFAULT ) , ( column_name ) = ( SELECT 1 ) RETURNING colname , colname output_name"), Unimplemented("UPDATE table_name * SET ( column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) RETURNING colname , colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ROW ( expression , expression ) FROM from_item RETURNING colname , colname output_name"), - Parses("UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname , colname output_name"), + Converts("UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ROW ( expression , DEFAULT ) , column_name = expression FROM from_item RETURNING colname , colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ( expression , expression ) , column_name = DEFAULT FROM from_item RETURNING colname , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name SET ( column_name , column_name ) = ( expression , DEFAULT ) , column_name = DEFAULT FROM from_item RETURNING colname , colname output_name"), @@ -5766,7 +5766,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ROW ( expression ) FROM from_item RETURNING colname , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ROW ( expression ) FROM from_item RETURNING colname , colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ROW ( expression ) FROM from_item RETURNING colname , colname output_name"), - Parses("UPDATE table_name alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT ) FROM from_item RETURNING colname , colname output_name"), + Converts("UPDATE table_name alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT ) FROM from_item RETURNING colname , colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item RETURNING colname , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item RETURNING colname , colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * alias SET column_name = DEFAULT , ( column_name , column_name ) = ( DEFAULT ) FROM from_item RETURNING colname , colname output_name"), @@ -5798,7 +5798,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ROW ( expression , expression ) , ( column_name , column_name ) = ROW ( DEFAULT , expression ) FROM from_item RETURNING colname , colname output_name"), Unimplemented("UPDATE table_name * SET ( column_name ) = ROW ( DEFAULT , expression ) , ( column_name , column_name ) = ROW ( DEFAULT , expression ) FROM from_item RETURNING colname , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET column_name = expression , ( column_name ) = ( expression , DEFAULT ) FROM from_item RETURNING colname , colname output_name"), - Parses("UPDATE table_name alias SET column_name = DEFAULT , ( column_name ) = ( expression , DEFAULT ) FROM from_item RETURNING colname , colname output_name"), + Converts("UPDATE table_name alias SET column_name = DEFAULT , ( column_name ) = ( expression , DEFAULT ) FROM from_item RETURNING colname , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ( expression ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item RETURNING colname , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ( expression ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item RETURNING colname , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ROW ( expression , expression ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item RETURNING colname , colname output_name"), @@ -5870,7 +5870,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ROW ( expression ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname , colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname , colname output_name"), - Parses("UPDATE table_name alias SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname , colname output_name"), + Converts("UPDATE table_name alias SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname , colname output_name"), Unimplemented("UPDATE table_name AS alias SET ( column_name ) = ROW ( DEFAULT ) , ( column_name ) = ROW ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname , colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname , colname output_name"), Unimplemented("UPDATE ONLY table_name alias SET ( column_name , column_name ) = ( expression , expression ) , ( column_name , column_name ) = ROW ( DEFAULT , expression ) FROM from_item , from_item RETURNING colname , colname output_name"), @@ -6107,7 +6107,7 @@ func TestUpdate(t *testing.T) { Unimplemented("UPDATE table_name * AS alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname output_name"), Unimplemented("UPDATE table_name AS alias SET ( column_name ) = ROW ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname output_name"), - Parses("UPDATE table_name AS alias SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname output_name"), + Converts("UPDATE table_name AS alias SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname output_name"), Unimplemented("UPDATE table_name * AS alias SET ( column_name , column_name ) = ROW ( expression , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname output_name"), Unimplemented("UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname output_name"), @@ -6451,7 +6451,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE table_name alias SET ( column_name , column_name ) = ROW ( expression , expression ) , ( column_name ) = ( DEFAULT ) FROM from_item RETURNING colname output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT ) FROM from_item RETURNING colname output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ( expression ) , ( column_name , column_name ) = ( DEFAULT ) FROM from_item RETURNING colname output_name , colname output_name"), - Parses("UPDATE table_name SET ( column_name ) = ( expression , expression ) , ( column_name , column_name ) = ( DEFAULT ) FROM from_item RETURNING colname output_name , colname output_name"), + Converts("UPDATE table_name SET ( column_name ) = ( expression , expression ) , ( column_name , column_name ) = ( DEFAULT ) FROM from_item RETURNING colname output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT ) FROM from_item RETURNING colname output_name , colname output_name"), Unimplemented("UPDATE table_name AS alias SET ( column_name , column_name ) = ROW ( expression ) , ( column_name ) = ROW ( DEFAULT ) FROM from_item RETURNING colname output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name alias SET ( column_name ) = ( expression ) , ( column_name , column_name ) = ROW ( DEFAULT ) FROM from_item RETURNING colname output_name , colname output_name"), @@ -6545,7 +6545,7 @@ func TestUpdate(t *testing.T) { Unimplemented("UPDATE ONLY table_name SET column_name = DEFAULT , ( column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING colname output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ( expression ) , ( column_name , column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING colname output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ROW ( expression ) , ( column_name , column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING colname output_name , colname output_name"), - Parses("UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING colname output_name , colname output_name"), + Converts("UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( DEFAULT ) FROM from_item , from_item RETURNING colname output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ROW ( expression ) , ( column_name ) = ROW ( DEFAULT ) FROM from_item , from_item RETURNING colname output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * SET ( column_name ) = ( expression , DEFAULT ) , ( column_name ) = ROW ( DEFAULT ) FROM from_item , from_item RETURNING colname output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name ) = ROW ( DEFAULT ) FROM from_item , from_item RETURNING colname output_name , colname output_name"), @@ -6589,7 +6589,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ( expression , expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item RETURNING colname output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item RETURNING colname output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item RETURNING colname output_name , colname output_name"), - Parses("UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item RETURNING colname output_name , colname output_name"), + Converts("UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item RETURNING colname output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ( expression , expression ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item RETURNING colname output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ROW ( expression , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item RETURNING colname output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ( expression ) , ( column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item , from_item RETURNING colname output_name , colname output_name"), @@ -6759,7 +6759,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET ( column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ROW ( expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ROW ( expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ROW ( expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname output_name"), - Parses("UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname output_name"), + Converts("UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ( SELECT 1 ) , ( column_name ) = ( DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname output_name"), @@ -6778,7 +6778,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ROW ( expression , DEFAULT ) , ( column_name ) = ( DEFAULT , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET ( column_name ) = ROW ( DEFAULT , expression ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname output_name"), - Parses("UPDATE table_name alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname output_name"), + Converts("UPDATE table_name alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname output_name"), Unimplemented("UPDATE table_name alias SET ( column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT , expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname output_name"), Unimplemented("UPDATE table_name * alias SET ( column_name ) = ROW ( DEFAULT , expression ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname output_name"), @@ -7180,7 +7180,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name ) = ROW ( expression , expression ) FROM from_item RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ROW ( expression , expression ) FROM from_item RETURNING colname AS output_name , colname output_name"), Unimplemented("UPDATE table_name * AS alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ROW ( expression , expression ) FROM from_item RETURNING colname AS output_name , colname output_name"), - Parses("UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname AS output_name , colname output_name"), + Converts("UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname AS output_name , colname output_name"), @@ -7210,7 +7210,7 @@ func TestUpdate(t *testing.T) { Unimplemented("UPDATE table_name * AS alias SET ( column_name ) = ROW ( expression ) , ( column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ( DEFAULT ) , ( column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname AS output_name , colname output_name"), Unimplemented("UPDATE ONLY table_name SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item RETURNING colname AS output_name , colname output_name"), - Parses("UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name ) = ( SELECT 1 ) FROM from_item RETURNING colname AS output_name , colname output_name"), + Converts("UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name ) = ( SELECT 1 ) FROM from_item RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * SET ( column_name ) = ROW ( expression , expression ) , ( column_name ) = ( SELECT 1 ) FROM from_item RETURNING colname AS output_name , colname output_name"), Unimplemented("UPDATE ONLY table_name alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( SELECT 1 ) FROM from_item RETURNING colname AS output_name , colname output_name"), Unimplemented("UPDATE ONLY table_name AS alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( SELECT 1 ) FROM from_item RETURNING colname AS output_name , colname output_name"), @@ -7281,7 +7281,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name , colname output_name"), Unimplemented("UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name ) = ( SELECT 1 ) FROM from_item , from_item RETURNING colname AS output_name , colname output_name"), - Parses("UPDATE table_name SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name ) = ( SELECT 1 ) FROM from_item , from_item RETURNING colname AS output_name , colname output_name"), + Converts("UPDATE table_name SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name ) = ( SELECT 1 ) FROM from_item , from_item RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name alias SET ( column_name , column_name ) = ROW ( DEFAULT ) WHERE condition RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ROW ( expression , expression ) WHERE condition RETURNING colname AS output_name , colname output_name"), @@ -7393,7 +7393,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ROW ( expression ) FROM from_item WHERE condition RETURNING colname AS output_name , colname output_name"), Unimplemented("UPDATE table_name SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ROW ( expression ) FROM from_item WHERE condition RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ROW ( DEFAULT ) , ( column_name ) = ( DEFAULT ) FROM from_item WHERE condition RETURNING colname AS output_name , colname output_name"), - Parses("UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( DEFAULT ) FROM from_item WHERE condition RETURNING colname AS output_name , colname output_name"), + Converts("UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( DEFAULT ) FROM from_item WHERE condition RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) , ( column_name ) = ROW ( DEFAULT ) FROM from_item WHERE condition RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ROW ( expression ) , ( column_name , column_name ) = ROW ( DEFAULT ) FROM from_item WHERE condition RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT ) FROM from_item WHERE condition RETURNING colname AS output_name , colname output_name"), @@ -7403,7 +7403,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE table_name * alias SET column_name = DEFAULT , ( column_name ) = ( expression , expression ) FROM from_item WHERE condition RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ( expression ) , ( column_name ) = ( expression , expression ) FROM from_item WHERE condition RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name alias SET ( column_name ) = ( expression , DEFAULT ) , ( column_name ) = ( expression , expression ) FROM from_item WHERE condition RETURNING colname AS output_name , colname output_name"), - Parses("UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name ) = ( expression , expression ) FROM from_item WHERE condition RETURNING colname AS output_name , colname output_name"), + Converts("UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name ) = ( expression , expression ) FROM from_item WHERE condition RETURNING colname AS output_name , colname output_name"), Unimplemented("UPDATE ONLY table_name AS alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name ) = ( expression , expression ) FROM from_item WHERE condition RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name ) = ( expression , expression ) FROM from_item WHERE condition RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * SET ( column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item WHERE condition RETURNING colname AS output_name , colname output_name"), @@ -7540,7 +7540,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ( DEFAULT ) , ( column_name ) = ( SELECT 1 ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ( DEFAULT ) , ( column_name ) = ( SELECT 1 ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname output_name"), Unimplemented("UPDATE table_name * AS alias SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) , ( column_name ) = ( SELECT 1 ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname output_name"), - Parses("UPDATE table_name AS alias SET ( column_name ) = ( SELECT 1 ) , ( column_name ) = ( SELECT 1 ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname output_name"), + Converts("UPDATE table_name AS alias SET ( column_name ) = ( SELECT 1 ) , ( column_name ) = ( SELECT 1 ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET ( column_name ) = ROW ( expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ROW ( expression , expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname output_name"), @@ -7908,11 +7908,11 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE table_name * SET ( column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ( SELECT 1 ) RETURNING colname , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) FROM from_item RETURNING colname , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) FROM from_item RETURNING colname , colname AS output_name"), - Parses("UPDATE table_name AS alias SET ( column_name ) = ( expression ) , column_name = expression FROM from_item RETURNING colname , colname AS output_name"), + Converts("UPDATE table_name AS alias SET ( column_name ) = ( expression ) , column_name = expression FROM from_item RETURNING colname , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ( expression , DEFAULT ) , column_name = expression FROM from_item RETURNING colname , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , column_name = expression FROM from_item RETURNING colname , colname AS output_name"), - Parses("UPDATE table_name alias SET ( column_name , column_name ) = ( expression ) , ( column_name ) = ( expression ) FROM from_item RETURNING colname , colname AS output_name"), - Parses("UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name ) = ( expression ) FROM from_item RETURNING colname , colname AS output_name"), + Converts("UPDATE table_name alias SET ( column_name , column_name ) = ( expression ) , ( column_name ) = ( expression ) FROM from_item RETURNING colname , colname AS output_name"), + Converts("UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name ) = ( expression ) FROM from_item RETURNING colname , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name ) = ( expression ) FROM from_item RETURNING colname , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ( expression ) FROM from_item RETURNING colname , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( expression ) FROM from_item RETURNING colname , colname AS output_name"), @@ -8192,7 +8192,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE table_name * SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * SET ( column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ROW ( DEFAULT , expression ) FROM from_item WHERE condition RETURNING colname , colname AS output_name"), - Parses("UPDATE table_name alias SET column_name = expression , ( column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname , colname AS output_name"), + Converts("UPDATE table_name alias SET column_name = expression , ( column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET column_name = DEFAULT , ( column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ROW ( expression ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ( expression , expression ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname , colname AS output_name"), @@ -8216,15 +8216,15 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname , colname AS output_name"), - Parses("UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item WHERE condition RETURNING colname , colname AS output_name"), + Converts("UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("UPDATE table_name * alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ROW ( DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET ( column_name , column_name ) = ROW ( expression ) , column_name = expression FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name SET ( column_name ) = ( DEFAULT ) , column_name = expression FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ( expression , expression ) , column_name = expression FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression , expression ) , column_name = expression FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), - Parses("UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , column_name = expression FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), - Parses("UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression , expression ) , column_name = DEFAULT FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), + Converts("UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , column_name = expression FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), + Converts("UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression , expression ) , column_name = DEFAULT FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , column_name = DEFAULT FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ( SELECT 1 ) , column_name = DEFAULT FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET column_name = DEFAULT , ( column_name ) = ( expression ) FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), @@ -8270,13 +8270,13 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT , expression ) FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * SET ( column_name , column_name ) = ROW ( expression , expression ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), - Parses("UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), + Converts("UPDATE table_name AS alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ( expression , expression ) , ( column_name , column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("UPDATE table_name * AS alias SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), - Parses("UPDATE table_name alias SET ( column_name ) = ( DEFAULT ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), + Converts("UPDATE table_name alias SET ( column_name ) = ( DEFAULT ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name alias SET ( column_name ) = ( DEFAULT ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ROW ( expression , expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname , colname AS output_name"), @@ -8614,7 +8614,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE table_name alias SET ( column_name ) = ( DEFAULT , expression ) , column_name = expression FROM from_item RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , column_name = expression FROM from_item RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , column_name = expression FROM from_item RETURNING colname output_name , colname AS output_name"), - Parses("UPDATE table_name AS alias SET ( column_name ) = ( expression ) , column_name = DEFAULT FROM from_item RETURNING colname output_name , colname AS output_name"), + Converts("UPDATE table_name AS alias SET ( column_name ) = ( expression ) , column_name = DEFAULT FROM from_item RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ROW ( DEFAULT ) , column_name = DEFAULT FROM from_item RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , column_name = DEFAULT FROM from_item RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name SET column_name = expression , ( column_name ) = ( expression ) FROM from_item RETURNING colname output_name , colname AS output_name"), @@ -8644,11 +8644,11 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name ) = ( expression , expression ) FROM from_item RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ( expression ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item RETURNING colname output_name , colname AS output_name"), Unimplemented("UPDATE ONLY table_name SET ( column_name ) = ROW ( DEFAULT , expression ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item RETURNING colname output_name , colname AS output_name"), - Parses("UPDATE table_name SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item RETURNING colname output_name , colname AS output_name"), + Converts("UPDATE table_name SET ( column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ROW ( expression , expression ) FROM from_item RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ROW ( expression , DEFAULT ) , ( column_name , column_name ) = ROW ( expression , expression ) FROM from_item RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ROW ( expression , expression ) FROM from_item RETURNING colname output_name , colname AS output_name"), - Parses("UPDATE table_name alias SET ( column_name , column_name ) = ( expression ) , ( column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname output_name , colname AS output_name"), + Converts("UPDATE table_name alias SET ( column_name , column_name ) = ( expression ) , ( column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET ( column_name ) = ROW ( expression ) , ( column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ROW ( expression , DEFAULT ) , ( column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname output_name , colname AS output_name"), @@ -8715,7 +8715,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * SET ( column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( expression ) FROM from_item , from_item RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( expression ) FROM from_item , from_item RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( expression ) FROM from_item , from_item RETURNING colname output_name , colname AS output_name"), - Parses("UPDATE table_name alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( expression ) FROM from_item , from_item RETURNING colname output_name , colname AS output_name"), + Converts("UPDATE table_name alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( expression ) FROM from_item , from_item RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ROW ( DEFAULT ) , ( column_name ) = ROW ( expression ) FROM from_item , from_item RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ROW ( expression , expression ) , ( column_name ) = ROW ( expression ) FROM from_item , from_item RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ( expression , DEFAULT ) , ( column_name ) = ROW ( expression ) FROM from_item , from_item RETURNING colname output_name , colname AS output_name"), @@ -8926,8 +8926,8 @@ func TestUpdate(t *testing.T) { Unimplemented("UPDATE ONLY table_name SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), - Parses("UPDATE table_name AS alias SET column_name = expression , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), - Parses("UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), + Converts("UPDATE table_name AS alias SET column_name = expression , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), + Converts("UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET ( column_name ) = ( DEFAULT ) , ( column_name ) = ROW ( expression , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), @@ -8938,7 +8938,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ( expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ROW ( expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), - Parses("UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), + Converts("UPDATE table_name alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ( expression , expression ) , ( column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name ) = ROW ( DEFAULT , DEFAULT ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), @@ -8952,7 +8952,7 @@ func TestUpdate(t *testing.T) { Unimplemented("UPDATE table_name SET ( column_name ) = ROW ( expression , DEFAULT ) , ( column_name ) = ( SELECT 1 ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ( SELECT 1 ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name , column_name ) = ROW ( expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), - Parses("UPDATE table_name SET ( column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), + Converts("UPDATE table_name SET ( column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), Unimplemented("UPDATE table_name * alias SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item WHERE condition RETURNING colname output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ( expression ) FROM from_item , from_item WHERE condition RETURNING colname output_name , colname AS output_name"), @@ -9357,12 +9357,12 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ( expression , expression ) FROM from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ROW ( expression ) , column_name = expression FROM from_item RETURNING colname AS output_name , colname AS output_name"), - Parses("UPDATE table_name AS alias SET ( column_name , column_name ) = ( DEFAULT ) , column_name = expression FROM from_item RETURNING colname AS output_name , colname AS output_name"), + Converts("UPDATE table_name AS alias SET ( column_name , column_name ) = ( DEFAULT ) , column_name = expression FROM from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("UPDATE table_name * SET ( column_name , column_name ) = ROW ( DEFAULT , DEFAULT ) , column_name = expression FROM from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name alias SET column_name = expression , column_name = DEFAULT FROM from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ( expression , expression ) , column_name = DEFAULT FROM from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET column_name = expression , ( column_name ) = ( expression ) FROM from_item RETURNING colname AS output_name , colname AS output_name"), - Parses("UPDATE table_name alias SET ( column_name ) = ( expression , expression ) , ( column_name ) = ( expression ) FROM from_item RETURNING colname AS output_name , colname AS output_name"), + Converts("UPDATE table_name alias SET ( column_name ) = ( expression , expression ) , ( column_name ) = ( expression ) FROM from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ROW ( expression ) , ( column_name , column_name ) = ( expression ) FROM from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ROW ( expression , expression ) , ( column_name , column_name ) = ( expression ) FROM from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name , column_name ) = ( expression ) FROM from_item RETURNING colname AS output_name , colname AS output_name"), @@ -9400,7 +9400,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE table_name SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ( expression , DEFAULT ) , ( column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("UPDATE ONLY table_name alias SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname AS output_name , colname AS output_name"), - Parses("UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname AS output_name , colname AS output_name"), + Converts("UPDATE table_name AS alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , expression ) FROM from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ROW ( expression , DEFAULT ) , ( column_name , column_name ) = ROW ( DEFAULT , expression ) FROM from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("UPDATE ONLY table_name SET column_name = expression , ( column_name ) = ( expression , DEFAULT ) FROM from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ( DEFAULT , DEFAULT ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item RETURNING colname AS output_name , colname AS output_name"), @@ -9432,7 +9432,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name SET ( column_name ) = ( expression , expression ) , column_name = expression FROM from_item , from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ( DEFAULT , expression ) , column_name = expression FROM from_item , from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("UPDATE table_name SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) , column_name = expression FROM from_item , from_item RETURNING colname AS output_name , colname AS output_name"), - Parses("UPDATE table_name AS alias SET ( column_name ) = ( SELECT 1 ) , column_name = expression FROM from_item , from_item RETURNING colname AS output_name , colname AS output_name"), + Converts("UPDATE table_name AS alias SET ( column_name ) = ( SELECT 1 ) , column_name = expression FROM from_item , from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET column_name = DEFAULT , column_name = DEFAULT FROM from_item , from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ROW ( DEFAULT ) , column_name = DEFAULT FROM from_item , from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , column_name = DEFAULT FROM from_item , from_item RETURNING colname AS output_name , colname AS output_name"), @@ -9466,7 +9466,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * SET ( column_name , column_name ) = ( DEFAULT , expression ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ROW ( DEFAULT , expression ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ( SELECT 1 ) , ( column_name ) = ( expression , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname AS output_name"), - Parses("UPDATE table_name AS alias SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname AS output_name"), + Converts("UPDATE table_name AS alias SET ( column_name , column_name ) = ( DEFAULT ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name SET ( column_name ) = ( expression , expression ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ROW ( expression , expression ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( expression , expression ) FROM from_item , from_item RETURNING colname AS output_name , colname AS output_name"), @@ -9692,14 +9692,14 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name alias SET ( column_name ) = ( DEFAULT ) , ( column_name ) = ( SELECT 1 ) FROM from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name alias SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name ) = ( SELECT 1 ) FROM from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name AS alias SET ( column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), - Parses("UPDATE table_name SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), + Converts("UPDATE table_name SET ( column_name ) = ( DEFAULT , DEFAULT ) , ( column_name , column_name ) = ( SELECT 1 ) FROM from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name alias SET ( column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("UPDATE ONLY table_name AS alias SET ( column_name , column_name ) = ROW ( DEFAULT ) , column_name = expression FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , column_name = expression FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name SET ( column_name , column_name ) = ROW ( expression ) , column_name = DEFAULT FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ( DEFAULT ) , column_name = DEFAULT FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ROW ( DEFAULT ) , column_name = DEFAULT FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), - Parses("UPDATE table_name SET ( column_name , column_name ) = ( expression , DEFAULT ) , column_name = DEFAULT FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), + Converts("UPDATE table_name SET ( column_name , column_name ) = ( expression , DEFAULT ) , column_name = DEFAULT FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("UPDATE ONLY table_name SET ( column_name ) = ROW ( expression , DEFAULT ) , column_name = DEFAULT FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name SET ( column_name ) = ( DEFAULT ) , ( column_name ) = ( expression ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE ONLY table_name AS alias SET ( column_name ) = ROW ( expression , expression ) , ( column_name ) = ( expression ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), @@ -9756,7 +9756,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ROW ( expression , expression ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("UPDATE table_name AS alias SET ( column_name , column_name ) = ROW ( expression , DEFAULT ) , ( column_name ) = ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE ONLY table_name alias SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), - Parses("UPDATE table_name AS alias SET ( column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), + Converts("UPDATE table_name AS alias SET ( column_name ) = ( SELECT 1 ) , ( column_name , column_name ) = ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name SET ( column_name ) = ROW ( expression , expression ) , ( column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("UPDATE table_name alias SET ( column_name , column_name ) = ROW ( expression , DEFAULT ) , ( column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ROW ( DEFAULT , DEFAULT ) , ( column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), @@ -9771,7 +9771,7 @@ func TestUpdate(t *testing.T) { Unimplemented("WITH RECURSIVE queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name ) = ROW ( expression , DEFAULT ) , ( column_name , column_name ) = ROW ( expression , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) UPDATE table_name * SET ( column_name ) = ( DEFAULT ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * AS alias SET ( column_name , column_name ) = ROW ( DEFAULT , expression ) , ( column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), - Parses("UPDATE table_name alias SET column_name = DEFAULT , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), + Converts("UPDATE table_name alias SET column_name = DEFAULT , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH RECURSIVE queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ( expression ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name , column_name ) = ( expression ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), Unimplemented("WITH queryname AS ( select ) , queryname AS ( select ) UPDATE table_name * alias SET ( column_name ) = ROW ( DEFAULT ) , ( column_name , column_name ) = ( DEFAULT , DEFAULT ) FROM from_item , from_item WHERE condition RETURNING colname AS output_name , colname AS output_name"), diff --git a/testing/go/update_test.go b/testing/go/update_test.go index 70310d1826..0b36c1a922 100755 --- a/testing/go/update_test.go +++ b/testing/go/update_test.go @@ -106,20 +106,16 @@ func TestUpdate(t *testing.T) { Expected: []sql.Row{{"42", 2, 4}}, }, { - // TODO: * requires extra analysis to expand columns - Skip: true, Query: "UPDATE t SET c1 = '43' RETURNING *;", - Expected: []sql.Row{{1, "43"}}, + Expected: []sql.Row{{2, "43"}}, }, }, }, { - // TODO: Update joins are not supported yet - Skip: true, Name: "UPDATE ... RETURNING with join", SetUpScript: []string{ - "CREATE TABLE employees (id SERIAL PRIMARY KEY, name TEXT, department_id INT, salary NUMERIC);", - "CREATE TABLE departments (id SERIAL PRIMARY KEY, name TEXT, bonus NUMERIC);", + "CREATE TABLE employees (id SERIAL PRIMARY KEY, name TEXT, department_id INT, salary INT);", + "CREATE TABLE departments (id SERIAL PRIMARY KEY, name TEXT, bonus INT);", "INSERT INTO employees (name, department_id, salary) VALUES ('Alice', 1, 50000), ('Bob', 2, 60000);", "INSERT INTO departments (name, bonus) VALUES ('Engineering', 5000), ('Marketing', 3000);", }, @@ -133,5 +129,172 @@ func TestUpdate(t *testing.T) { }, }, }, + { + Name: "UPDATE with join on subquery", + SetUpScript: []string{ + "CREATE TABLE employees (id INT PRIMARY KEY, name TEXT, department_id INT, salary INT);", + "CREATE TABLE departments (id INT PRIMARY KEY, name TEXT, bonus INT);", + "INSERT INTO employees VALUES (1, 'Alice', 10, 50000), (2, 'Bob', 20, 60000);", + "INSERT INTO departments VALUES (10, 'Engineering', 5000), (20, 'HR', 3000);", + }, + Assertions: []ScriptTestAssertion{ + { + Query: ` + UPDATE employees SET salary = salary + dept_bonus.bonus + FROM ( SELECT id, bonus FROM departments ) AS dept_bonus + WHERE employees.department_id = dept_bonus.id AND employees.name = 'Alice';`, + }, + { + Query: "SELECT salary FROM employees WHERE name = 'Alice';", + Expected: []sql.Row{ + {55000}, + }, + }, + }, + }, + { + Name: "UPDATE with join on one table", + SetUpScript: []string{ + "CREATE TABLE products (id SERIAL PRIMARY KEY, name TEXT, price INT, category_id INT);", + "CREATE TABLE categories (id SERIAL PRIMARY KEY, name TEXT, discount INT);", + "INSERT INTO products (name, price, category_id) VALUES ('Laptop', 1000, 1), ('Phone', 800, 2);", + "INSERT INTO categories (name, discount) VALUES ('Electronics', 100), ('Mobiles', 50);", + }, + Assertions: []ScriptTestAssertion{ + { + Query: "UPDATE products p SET price = price - c.discount FROM categories c WHERE p.category_id = c.id;", + }, + { + Query: "SELECT id, name, price FROM products ORDER BY id;", + Expected: []sql.Row{ + {1, "Laptop", 900}, + {2, "Phone", 750}, + }, + }, + }, + }, + { + Name: "UPDATE with join on two tables", + SetUpScript: []string{ + "CREATE TABLE books (id SERIAL PRIMARY KEY, title TEXT, price INT, author_id INT, publisher_id INT);", + "CREATE TABLE authors (id SERIAL PRIMARY KEY, royalty INT);", + "CREATE TABLE publishers (id SERIAL PRIMARY KEY, markup INT);", + "INSERT INTO books (title, price, author_id, publisher_id) VALUES ('Book A', 100, 1, 1), ('Book B', 120, 2, 2);", + "INSERT INTO authors (royalty) VALUES (10), (20);", + "INSERT INTO publishers (markup) VALUES (15), (25);", + }, + Assertions: []ScriptTestAssertion{ + { + Query: "UPDATE books b SET price = price + a.royalty - p.markup FROM authors a, publishers p WHERE b.author_id = a.id AND b.publisher_id = p.id;", + }, + { + Query: "SELECT id, title, price FROM books ORDER BY id;", + Expected: []sql.Row{ + {1, "Book A", 95}, // 100 + 10 - 15 + {2, "Book B", 115}, // 120 + 20 - 25 + }, + }, + }, + }, + { + Name: "UPDATE with join on three tables", + SetUpScript: []string{ + "CREATE TABLE orders (id SERIAL PRIMARY KEY, customer_id INT, product_id INT, total INT);", + "CREATE TABLE customers (id SERIAL PRIMARY KEY, loyalty_discount INT);", + "CREATE TABLE products (id SERIAL PRIMARY KEY, base_price INT, tax_id INT);", + "CREATE TABLE taxes (id SERIAL PRIMARY KEY, rate INT);", + "INSERT INTO orders (customer_id, product_id, total) VALUES (1, 1, 0), (2, 2, 0);", + "INSERT INTO customers (loyalty_discount) VALUES (5), (10);", + "INSERT INTO products (base_price, tax_id) VALUES (100, 1), (200, 2);", + "INSERT INTO taxes (rate) VALUES (10), (20);", + }, + Assertions: []ScriptTestAssertion{ + { + Query: ` + UPDATE orders o + SET total = p.base_price + (p.base_price * t.rate / 100) - c.loyalty_discount + FROM customers c, products p, taxes t + WHERE o.customer_id = c.id AND o.product_id = p.id AND p.tax_id = t.id; + `, + }, + { + Query: "SELECT id, total FROM orders ORDER BY id;", + Expected: []sql.Row{ + {1, 105}, // 100 + 10 - 5 + {2, 230}, // 200 + 40 - 10 + }, + }, + }, + }, + { + Name: "UPDATE with join on four tables", + SetUpScript: []string{ + "CREATE TABLE rentals (id SERIAL PRIMARY KEY, vehicle_id INT, user_id INT, total_cost INT);", + "CREATE TABLE vehicles (id SERIAL PRIMARY KEY, base_rate INT, fuel_type_id INT);", + "CREATE TABLE users (id SERIAL PRIMARY KEY, membership_level_id INT);", + "CREATE TABLE fuel_types (id SERIAL PRIMARY KEY, surcharge INT);", + "CREATE TABLE membership_levels (id SERIAL PRIMARY KEY, discount INT);", + "INSERT INTO rentals (vehicle_id, user_id, total_cost) VALUES (1, 1, 0), (2, 2, 0);", + "INSERT INTO vehicles (base_rate, fuel_type_id) VALUES (300, 1), (400, 2);", + "INSERT INTO fuel_types (surcharge) VALUES (20), (40);", + "INSERT INTO users (membership_level_id) VALUES (1), (2);", + "INSERT INTO membership_levels (discount) VALUES (50), (80);", + }, + Assertions: []ScriptTestAssertion{ + { + Query: ` + UPDATE rentals r + SET total_cost = v.base_rate + f.surcharge - m.discount + FROM vehicles v, fuel_types f, users u, membership_levels m + WHERE r.vehicle_id = v.id AND v.fuel_type_id = f.id AND r.user_id = u.id AND u.membership_level_id = m.id; + `, + }, + { + Query: "SELECT id, total_cost FROM rentals ORDER BY id;", + Expected: []sql.Row{ + {1, 270}, // 300 + 20 - 50 + {2, 360}, // 400 + 40 - 80 + }, + }, + }, + }, + { + Name: "UPDATE with join on table with trigger", + SetUpScript: []string{ + "CREATE TABLE departments (id SERIAL PRIMARY KEY, name TEXT, bonus INT\n);", + "CREATE TABLE employees (id SERIAL PRIMARY KEY, name TEXT, department_id INT REFERENCES departments(id), salary INT);", + "INSERT INTO departments (name, bonus) VALUES ('Engineering', 1000), ('HR', 500);", + "INSERT INTO employees (name, department_id, salary) VALUES ('Alice', 1, 50000), ('Bob', 2, 45000);", + "CREATE TABLE salary_log (employee_id INT, old_salary INT, new_salary INT);", + `CREATE OR REPLACE FUNCTION log_salary_change() + RETURNS TRIGGER AS $$ + BEGIN + IF NEW.salary != OLD.salary THEN + INSERT INTO salary_log VALUES (OLD.id, OLD.salary, NEW.salary); + END IF; + RETURN NEW; + END; + $$ LANGUAGE plpgsql;`, + `CREATE TRIGGER trg_log_salary_change + AFTER UPDATE ON employees + FOR EACH ROW + EXECUTE FUNCTION log_salary_change();`, + }, + Assertions: []ScriptTestAssertion{ + { + Query: "UPDATE employees e SET salary = salary + d.bonus FROM departments d WHERE e.department_id = d.id;", + }, + { + // TODO: Triggers do not currently work for UPDATE ... FROM, because updatableJoinTable + // doesn't implement sql.DatabaseSchemaTable + Skip: true, + Query: "SELECT * FROM salary_log;", + Expected: []sql.Row{ + {1, 50000, 51000}, + {2, 45000, 45500}, + }, + }, + }, + }, }) }