MCPcopy Create free account
hub / github.com/bytebase/bytebase / classifyExplainedQuery

Function classifyExplainedQuery

backend/plugin/parser/pg/query_type.go:139–162  ·  view source on GitHub ↗

classifyExplainedQuery returns the QueryType for the query inside EXPLAIN ANALYZE.

(query ast.Node)

Source from the content-addressed store, hash-verified

137
138// classifyExplainedQuery returns the QueryType for the query inside EXPLAIN ANALYZE.
139func classifyExplainedQuery(query ast.Node) base.QueryType {
140 if query == nil {
141 return base.Select
142 }
143 switch n := query.(type) {
144 case *ast.SelectStmt:
145 if hasOmniIntoClause(n) {
146 return base.DDL
147 }
148 return base.Select
149 case *ast.InsertStmt, *ast.UpdateStmt, *ast.DeleteStmt:
150 return base.DML
151 case *ast.DeclareCursorStmt:
152 return base.Select
153 case *ast.CreateTableAsStmt:
154 return base.DDL
155 case *ast.RefreshMatViewStmt:
156 return base.DML
157 case *ast.ExecuteStmt:
158 return base.Select
159 default:
160 return base.Select
161 }
162}

Callers 1

classifyQueryTypeFunction · 0.85

Calls 1

hasOmniIntoClauseFunction · 0.85

Tested by

no test coverage detected