Changeset: d3e19b7567ac for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=d3e19b7567ac
Modified Files:
sql/server/rel_select.c
Branch: Dec2016
Log Message:
add missing exists handling in logical value expression handing.
diffs (29 lines):
diff --git a/sql/server/rel_select.c b/sql/server/rel_select.c
--- a/sql/server/rel_select.c
+++ b/sql/server/rel_select.c
@@ -2128,6 +2128,25 @@ rel_logical_value_exp(mvc *sql, sql_rel
}
return NULL;
}
+ case SQL_EXISTS:
+ case SQL_NOT_EXISTS:
+ {
+ symbol *lo = sc->data.sym;
+ sql_exp *le = rel_value_exp(sql, rel, lo, f, ek);
+ sql_subfunc *f = NULL;
+
+ if (!le)
+ return NULL;
+
+ if (sc->token != SQL_EXISTS)
+ f = sql_bind_func(sql->sa, sql->session->schema,
"sql_not_exists", exp_subtype(le), NULL, F_FUNC);
+ else
+ f = sql_bind_func(sql->sa, sql->session->schema,
"sql_exists", exp_subtype(le), NULL, F_FUNC);
+
+ if (!f)
+ return sql_error(sql, 02, "exist operator on type %s
missing", exp_subtype(le)->type->sqlname);
+ return exp_unop(sql->sa, le, f);
+ }
case SQL_LIKE:
case SQL_NOT_LIKE:
{
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list