MCPcopy Create free account
hub / github.com/PostHog/duckgres / transformUpdateStmt

Method transformUpdateStmt

transpiler/transform/operators.go:262–299  ·  view source on GitHub ↗
(stmt *pg_query.UpdateStmt)

Source from the content-addressed store, hash-verified

260}
261
262func (t *OperatorTransform) transformUpdateStmt(stmt *pg_query.UpdateStmt) bool {
263 if stmt == nil {
264 return false
265 }
266
267 changed := false
268
269 // Transform SET clause values
270 for _, target := range stmt.TargetList {
271 if resTarget := target.GetResTarget(); resTarget != nil && resTarget.Val != nil {
272 if newVal := t.transformExpression(resTarget.Val); newVal != nil {
273 resTarget.Val = newVal
274 changed = true
275 }
276 }
277 }
278
279 // Transform WHERE clause
280 if stmt.WhereClause != nil {
281 if newWhere := t.transformExpression(stmt.WhereClause); newWhere != nil {
282 stmt.WhereClause = newWhere
283 changed = true
284 }
285 }
286
287 // Transform FROM clause
288 for _, from := range stmt.FromClause {
289 if t.transformFromItem(from) {
290 changed = true
291 }
292 }
293
294 if t.transformReturningList(stmt.ReturningList) {
295 changed = true
296 }
297
298 return changed
299}
300
301func (t *OperatorTransform) transformDeleteStmt(stmt *pg_query.DeleteStmt) bool {
302 if stmt == nil {

Callers 1

TransformMethod · 0.95

Calls 3

transformExpressionMethod · 0.95
transformFromItemMethod · 0.95

Tested by

no test coverage detected