Changeset: d0a6fc57012f for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=d0a6fc57012f
Modified Files:
        sql/backends/monet5/sql_execute.c
        sql/server/rel_select.c
Branch: default
Log Message:

Merge with Dec2016 branch.


diffs (41 lines):

diff --git a/sql/backends/monet5/sql_execute.c 
b/sql/backends/monet5/sql_execute.c
--- a/sql/backends/monet5/sql_execute.c
+++ b/sql/backends/monet5/sql_execute.c
@@ -368,7 +368,7 @@ SQLescapeString(str s)
 {
        str ret = NULL;
        char *p, *q;
-       int len = 0;
+       size_t len = 0;
 
        if(!s) {
                return NULL;
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
@@ -2140,6 +2140,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
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to