MCPcopy Index your code
hub / github.com/CovenantSQL/CovenantSQL / Remove

Function Remove

cmd/cql-proxy/resolver/query_builder.go:138–164  ·  view source on GitHub ↗

Remove process remove query with filter like a mongodb.

(table string, availFields FieldMap, filter map[string]interface{}, justOne bool)

Source from the content-addressed store, hash-verified

136
137// Remove process remove query with filter like a mongodb.
138func Remove(table string, availFields FieldMap, filter map[string]interface{}, justOne bool) (
139 statement string, args []interface{}, fields FieldMap, err error) {
140 fields = FieldMap{}
141
142 statement = `DELETE FROM "` + table + `" `
143
144 // delete filter statement
145 filterFields, filterStatement, filterArgs, err := ResolveFilter(filter, availFields)
146 if err != nil {
147 err = errors.Wrapf(err, "resolve query filter failed")
148 return
149 }
150
151 fields.Merge(filterFields)
152 args = append(args, filterArgs...)
153
154 if filterStatement != "" {
155 statement += " WHERE "
156 statement += filterStatement
157 }
158
159 if justOne {
160 statement += " LIMIT 1"
161 }
162
163 return
164}
165
166// Count calculate record count in table applied with filter.
167func Count(table string, availFields FieldMap, filter map[string]interface{}) (

Callers 1

userDataRemoveFunction · 0.92

Calls 2

ResolveFilterFunction · 0.85
MergeMethod · 0.80

Tested by

no test coverage detected