diff --git a/contrib/babelfishpg_tsql/src/collation.c b/contrib/babelfishpg_tsql/src/collation.c index c25fba0f1b1..2c96e360853 100644 --- a/contrib/babelfishpg_tsql/src/collation.c +++ b/contrib/babelfishpg_tsql/src/collation.c @@ -8,16 +8,20 @@ #include "utils/syscache.h" #include "utils/memutils.h" #include "utils/builtins.h" +#include "catalog/pg_proc.h" #include "catalog/pg_type.h" #include "catalog/pg_collation.h" #include "catalog/namespace.h" #include "tsearch/ts_locale.h" +#include "optimizer/clauses.h" +#include "optimizer/optimizer.h" #include "parser/parser.h" #include "parser/parse_coerce.h" #include "parser/parse_type.h" #include "parser/parse_oper.h" #include "nodes/makefuncs.h" #include "nodes/nodes.h" +#include "nodes/pathnodes.h" #ifdef USE_ICU #include #include "utils/removeaccent.map" @@ -76,6 +80,87 @@ extern int pattern_fixed_prefix_wrapper(Const *patt, static Node *transform_likenode_for_AI(OpExpr *op); static Node *convert_node_to_funcexpr_for_like(Node *node, Oid inputcollid); +/* + * Check whether a like_escape call appears anywhere in the expression. + * Uses expression_tree_walker for safe traversal of all node types. + */ +static bool +contains_like_escape(Node *node, void *context) +{ + if (node == NULL) + return false; + if (IsA(node, FuncExpr) && + strcmp(get_func_name(((FuncExpr *) node)->funcid), + "like_escape") == 0) + return true; + return expression_tree_walker(node, contains_like_escape, context); +} + +/* + * Check whether the expression contains any non-immutable function + * outside our allowlist of safe-to-fold stable functions. + * Returns true if an unsafe function is found. + * + * Allowlisted functions are STABLE only because plpgsql/C cannot be + * declared IMMUTABLE, but are deterministic for constant inputs: + * babelfish_conv_helper_* - CONVERT / TRY_CONVERT + * babelfish_try_cast_to_* - TRY_CAST + * babelfish_concat_wrapper* - string + operator + * concat - CONCAT() + */ +static bool +has_unsafe_stable_func(Node *node, void *context) +{ + if (node == NULL) + return false; + if (IsA(node, FuncExpr)) + { + FuncExpr *func = (FuncExpr *) node; + + if (func_volatile(func->funcid) != PROVOLATILE_IMMUTABLE) + { + char *name = get_func_name(func->funcid); + bool safe = (name != NULL && + (strncmp(name, "babelfish_conv_helper_", 22) == 0 || + strncmp(name, "babelfish_try_cast_to_", 22) == 0 || + strncmp(name, "babelfish_concat_wrapper", 24) == 0 || + strcmp(name, "concat") == 0)); + + if (name) + pfree(name); + if (!safe) + return true; + } + } + return expression_tree_walker(node, has_unsafe_stable_func, context); +} + +/* + * Fold a LIKE pattern to Const, restricted to expressions whose + * non-immutable functions are all known-safe stable functions. + * The original LIKE is always kept as a recheck, so correctness + * is guaranteed. + */ +static Node * +fold_like_pattern_to_const(Node *expr) +{ + PlannerGlobal glob; + PlannerInfo root; + + if (has_unsafe_stable_func(expr, NULL)) + return expr; + + memset(&glob, 0, sizeof(PlannerGlobal)); + glob.type = T_PlannerGlobal; + glob.boundParams = NULL; + + memset(&root, 0, sizeof(PlannerInfo)); + root.type = T_PlannerInfo; + root.glob = &glob; + + return estimate_expression_value(&root, expr); +} + /* pattern prefix status for pattern_fixed_prefix_wrapper * Pattern_Prefix_None: no prefix found, this means the first character is a wildcard character * Pattern_Prefix_Exact: the pattern doesn't include any wildcard character @@ -327,8 +412,9 @@ create_collate_expr(Node *arg, Oid collid) * function to remove the accents and optimize. * If the node is OpExpr and the collation is cs_as, then simply use optimization: * - * Case 1: if the pattern is a constant stirng - * col LIKE PATTERN -> col = PATTERN + * Case 1: if the pattern is a constant string + * col LIKE PATTERN -> col = PATTERN AND col LIKE PATTERN + * col NOT LIKE PATTERN -> col <> PATTERN OR col NOT LIKE PATTERN * Case 2: if the pattern have a constant prefix * col LIKE PATTERN -> * col LIKE PATTERN BETWEEN prefix AND prefix||E'\uFFFF' @@ -386,9 +472,8 @@ optimise_likenode(Node *node, OpExpr *op, like_ilike_info_t like_entry, coll_inf op->opno = like_entry.ilike_oid; op->opfuncid = like_entry.ilike_opfuncid; } - - op->inputcollid = tsql_get_oid_from_collidx(collidx_of_cs_as); + op->inputcollid = tsql_get_oid_from_collidx(collidx_of_cs_as); /* Remove CollateExpr as the op->inputcollid has already been set */ if (IsA(rightop, CollateExpr)) @@ -401,6 +486,27 @@ optimise_likenode(Node *node, OpExpr *op, like_ilike_info_t like_entry, coll_inf linitial(op->args) = leftop = (Node*)((CollateExpr*) leftop)->arg; } + /* + * Try to reduce rightop to a Const for prefix extraction. + * + * First use eval_const_expressions (folds immutable functions like + * string concatenation and type casts). If still not a Const, use + * fold_like_pattern_to_const which selectively folds only + * allowlisted stable functions (CONVERT, TRY_CONVERT, TRY_CAST, + * string +) via estimate_expression_value. + * + * Skip for like_escape: PG's like_escape converts escape sequences + * to backslash format, which doesn't match T-SQL bracket patterns. + * Folding it produces wrong prefix bounds. + */ + if (!contains_like_escape(rightop, NULL)) + { + rightop = eval_const_expressions(NULL, rightop); + if (!IsA(rightop, Const)) + rightop = fold_like_pattern_to_const(rightop); + lsecond(op->args) = rightop; + } + /* * This is needed to process CI_AI for Const nodes * Because after we call coerce_to_target_type for type conversion in transform_likenode_for_AI, @@ -466,8 +572,10 @@ optimise_likenode(Node *node, OpExpr *op, like_ilike_info_t like_entry, coll_inf { RelabelType *relabel = (RelabelType *) leftop; leftop = copyObject((Node*) relabel->arg); - prefix->consttype = rtypeId = ltypeId = exprType(leftop); + ltypeId = exprType(leftop); } + /* Reconcile types — LIKE coerces to TEXT but we need original column type */ + prefix->consttype = rtypeId = ltypeId; /* * We need to do this because the dump considers rightop as Const with COLLATE being added @@ -506,7 +614,7 @@ optimise_likenode(Node *node, OpExpr *op, like_ilike_info_t like_entry, coll_inf InvalidOid, coll_info_of_inputcollid.oid, oprfuncid(optup))); - ret = make_and_qual(ret, node); + ret = like_entry.is_not_match ? make_or_qual(ret, node) : make_and_qual(ret, node); ReleaseSysCache(optup); } else @@ -1053,6 +1161,42 @@ transform_likenode(Node *node, bool is_constraint) get_remove_accents_internal_oid(); + /* + * View definitions (after dump/restore) lose original column collation + * due to ::text casts, causing wrong LIKE/ILIKE operator selection. + * Skip if an explicit COLLATE clause is present. + */ + + if (OidIsValid(like_entry.like_oid) && list_length(op->args) >= 2) + { + Node *left_arg = linitial(op->args); + Node *right_arg = lsecond(op->args); + if (!IsA(left_arg, CollateExpr) && !IsA(right_arg, CollateExpr) && !contain_var_clause(right_arg)) + { + Node *unwrapped = left_arg; + while (IsA(unwrapped, RelabelType)) + unwrapped = (Node *) ((RelabelType *) unwrapped)->arg; + + if (IsA(unwrapped, Var)) + { + Oid var_collation = ((Var *) unwrapped)->varcollid; + + if (OidIsValid(var_collation) && + var_collation != op->inputcollid) + { + coll_info_t var_coll_info = + tsql_lookup_collation_table_internal(var_collation); + + if (OidIsValid(var_coll_info.oid)) + { + op->inputcollid = var_collation; + coll_info_of_inputcollid = var_coll_info; + } + } + } + } + } + /* * We do not allow CREATE TABLE statements with CHECK constraint where * the constraint has an ILIKE operator and the collation is ci_as. diff --git a/test/JDBC/expected/babel_collection.out b/test/JDBC/expected/babel_collection.out index 18cfe372bdf..3962383ef59 100644 --- a/test/JDBC/expected/babel_collection.out +++ b/test/JDBC/expected/babel_collection.out @@ -323,8 +323,8 @@ GO ~~START~~ text Query Text: select c1 from testing4 where c1 NOT LIKE 'jones' -Bitmap Heap Scan on testing4 (cost=11.56..31.31 rows=647 width=32) - Filter: ((c1 <> 'jones'::"varchar") AND ((c1)::text !~~* 'jones'::text COLLATE bbf_unicode_cp1_cs_as)) +Bitmap Heap Scan on testing4 (cost=11.56..31.31 rows=650 width=32) + Filter: ((c1 <> 'jones'::"varchar") OR ((c1)::text !~~* 'jones'::text COLLATE bbf_unicode_cp1_cs_as)) -> Bitmap Index Scan on c1_idxtesting49a168d73f3ba5aacdfd495b931b8d187 (cost=0.00..11.40 rows=650 width=0) ~~END~~ diff --git a/test/JDBC/expected/db_collation/babel_collection.out b/test/JDBC/expected/db_collation/babel_collection.out index ffa17ab9823..bc3b5303ee4 100644 --- a/test/JDBC/expected/db_collation/babel_collection.out +++ b/test/JDBC/expected/db_collation/babel_collection.out @@ -311,8 +311,8 @@ GO ~~START~~ text Query Text: select c1 from testing4 where c1 NOT LIKE 'jones' -Bitmap Heap Scan on testing4 (cost=11.56..34.56 rows=647 width=32) - Filter: ((remove_accents_internal((c1)::text) <> 'jones'::nvarchar) AND ((remove_accents_internal((c1)::text))::text !~~* 'jones'::text COLLATE bbf_unicode_cp1_cs_as)) +Bitmap Heap Scan on testing4 (cost=11.56..34.56 rows=650 width=32) + Filter: ((remove_accents_internal((c1)::text) <> 'jones'::nvarchar) OR ((remove_accents_internal((c1)::text))::text !~~* 'jones'::text COLLATE bbf_unicode_cp1_cs_as)) -> Bitmap Index Scan on c1_idxtesting49a168d73f3ba5aacdfd495b931b8d187 (cost=0.00..11.40 rows=650 width=0) ~~END~~ diff --git a/test/JDBC/expected/db_collation/like_op_index_scan-vu-verify.out b/test/JDBC/expected/db_collation/like_op_index_scan-vu-verify.out new file mode 100644 index 00000000000..55ba4944e45 --- /dev/null +++ b/test/JDBC/expected/db_collation/like_op_index_scan-vu-verify.out @@ -0,0 +1,11931 @@ +-- psql +ANALYZE master_dbo.babel_5966_testlikecollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikecollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikecollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikecollation_cs_ai; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_cs_ai; +ANALYZE master_dbo.babel_5966_testlikecharcollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikecharcollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikecharcollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikecharcollation_cs_ai; +GO + +-- tsql +SELECT set_config('enable_bitmapscan', 'off', false); +GO +~~START~~ +text +off +~~END~~ + + +exec sp_babelfish_configure 'explain_costs', 'off'; +GO + +SET babelfish_showplan_all ON; +GO + + +-- Plain literal (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 122.182 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.101 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- Plain literal (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + + +-- Plain literal (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + + +-- N-prefix literal (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.180 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%abc'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%abc' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%abc'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + + +-- N-prefix literal (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- N-prefix literal (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.122 ms +~~END~~ + + + +-- N-prefix with no extractable prefix +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%else'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%else' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%else'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%else'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%else' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%else'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%a%b%c%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%a%b%c%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%a%b%c%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_xact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_xact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '_xact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_refix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_refix%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '_refix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'___' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + + +-- CAST/CONVERT of constants (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 15.303 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.434 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.502 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.155 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.313 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + + +-- CONVERT (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.257 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.130 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.136 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'%match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'%match') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + + +-- CAST/CONVERT (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.128 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + + +-- CAST/CONVERT (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.107 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.129 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + + +-- TRY_CAST (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 5.637 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.154 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.136 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + + +-- TRY_CAST (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + + +-- TRY_CAST (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + + +-- TRY_CAST nested +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(TRY_CAST(N'exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(TRY_CAST(N'exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.420 ms +~~END~~ + + + +-- TRY_CONVERT (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.154 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'%match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'%match') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.107 ms +~~END~~ + + + +-- TRY_CONVERT (NVARCHAR/CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.127 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + + +-- TRY_CAST/TRY_CONVERT non-const (col ref) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(Col AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(Col AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_try_cast_to_varchar('character varying(50)'::text COLLATE "default", (col)::text))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.343 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), Col); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), Col) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", (col)::text, true, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.749 ms +~~END~~ + + + +-- TRY_CAST/TRY_CONVERT with parameter +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(@p AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST("@p" AS VARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 9.169 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), @p); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'prefix%' + Query Text: SELECT N'prefix%' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), "@p") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, true, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.771 ms +~~END~~ + + + +-- TRY_CAST with invalid conversion (returns NULL) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_try_cast_floor_int('not a number'::text COLLATE "default"))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 5.459 ms +~~END~~ + + + +-- ISNULL / COALESCE / NULLIF +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.821 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'prefix%', 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'prefix%', 'fallback') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.142 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.165 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.375 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, NULL, N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, NULL, N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(Col, 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(Col, 'fallback') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (COALESCE(col, 'fallback'::"varchar"))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.515 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(@p, 'fallback'); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL("@p", 'fallback') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'fallback'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.224 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = NULL; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(@p, N'prefix%'); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT NULL + Query Text: SELECT NULL + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE("@p", N'prefix%') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.164 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.219 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'prefix%', 'something else'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'prefix%', 'something else') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.119 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match') +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + + +-- Cross-datatype combinations (const patterns) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match '::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + + +-- NOT LIKE variants (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.563 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR (col >= 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.132 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- NOT LIKE (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: (((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) OR (col >= 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text !~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + + +-- NOT LIKE (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: (((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) OR (col >= 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text !~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + + +-- Non-const patterns +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(Col AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(Col AS CHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((col)::bpchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.650 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.085 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(Col, '%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(Col, '%') +Finalize Aggregate + -> Gather + Workers Planned: 1 + -> Partial Aggregate + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (concat(VARIADIC ARRAY[col, '%'::"varchar"]))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.291 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE REPLACE(Col, '_', '%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE REPLACE(Col, '_', '%') +Finalize Aggregate + -> Gather + Workers Planned: 1 + -> Partial Aggregate + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (replace(col, '_'::"varchar", '%'::"varchar"))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.396 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE SUBSTRING(Col, 1, 3) + '%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE SUBSTRING(Col, 1, 3) + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(("substring"(col, 1, 3))::text, '%'::text COLLATE bbf_unicode_cp1_ci_as))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 16.440 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LEFT(Col, 5) + '%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LEFT(Col, 5) + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(("left"(col, 5))::text, '%'::text COLLATE bbf_unicode_cp1_ci_as))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.580 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (Col + '%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (Col + '%') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper((col)::text, '%'::text COLLATE bbf_unicode_cp1_ci_as))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 10.031 ms +~~END~~ + + + +-- Non-const with CONVERT +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", (col)::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.126 ms +~~END~~ + + + +-- NULL handling +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.746 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.165 ms +~~END~~ + + + +-- Special characters and ESCAPE (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix___' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.193 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'!%something' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'!%something' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '?%something'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'abc!%%' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'abc!%%' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'abc?%%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'back\slash'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'back\slash'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'single''quote'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'single''quote'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'[a-z]%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '[a-z]%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + + +-- ESCAPE (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix___' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'back\slash' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'back\slash'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'back\slash'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'single''quote' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'single''quote'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'single''quote'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'[a-z]%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '[a-z]%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- ESCAPE (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix___' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'back\slash' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'back\slash'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'back\slash'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'single''quote' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'single''quote'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'single''quote'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'[a-z]%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '[a-z]%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- Unicode and accented characters +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'café'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'caf'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'caf?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'rés%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'rés'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'rés?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'rés%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'résumé'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'résumé'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'straße' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'straße'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'straße'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'caf'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'caf?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'rés'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'rés?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'rés%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'caf'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'caf?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'résumé' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'résumé'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'résumé'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'straße' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'straße'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'straße'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'rés%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'rés'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'rés?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'rés%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + + +-- Boundary cases (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = ''::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces ' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = ' spaces '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* ' spaces '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= ' lead'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < ' lead?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* ' lead%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing ' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'trailing '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'trailing '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'nonexistent'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'nonexistent?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'nonexistent_value_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'zzz%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'zzz'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'zzz?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- Boundary cases (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = ''::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'a' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'a'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'nonexistent'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'nonexistent?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'nonexistent_value_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'zzz%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: (((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'zzz'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'zzz?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + + +-- Boundary cases (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = ''::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'a' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'a'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'_' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' spaces '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' spaces ' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = ' spaces '::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* ' spaces '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' lead%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' lead%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= ' lead'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < ' lead?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* ' lead%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'trailing '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'trailing ' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'trailing '::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'trailing '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'nonexistent'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'nonexistent?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'nonexistent_value_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'zzz%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: (((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'zzz'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'zzz?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.104 ms +~~END~~ + + + +-- Variables and parameters +DECLARE @pattern VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT 'exact match' + Query Text: SELECT 'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.922 ms +~~END~~ + + +DECLARE @pattern NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT N'prefix%' + Query Text: SELECT N'prefix%' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.149 ms +~~END~~ + + +DECLARE @pattern VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@pattern AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT 'exact match' + Query Text: SELECT 'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@pattern" AS NVARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.163 ms +~~END~~ + + +DECLARE @pattern NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @pattern); +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), "@pattern") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.161 ms +~~END~~ + + +DECLARE @pattern VARCHAR(50) = 'test'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern + '%'; +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT 'test' + Query Text: SELECT 'test' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(NULL::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.171 ms +~~END~~ + + + +-- Expression patterns — Constant foldable +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'EXACT MATCH'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 10.149 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.151 ms +~~END~~ + + + +-- Function on LHS — Blocks index +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE UPPER(Col) LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE UPPER(Col) LIKE N'EXACT MATCH' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: (((upper(col))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (upper(col) = 'EXACT MATCH'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.337 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LOWER(Col) LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LOWER(Col) LIKE N'prefix%' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: (((lower(col))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (lower(col) >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (lower(col) < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LEFT(Col, 10) LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LEFT(Col, 10) LIKE N'prefix%' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((("left"(col, 10))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ("left"(col, 10) >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND ("left"(col, 10) < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.508 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE RTRIM(Col) LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE RTRIM(Col) LIKE N'exact match' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: (((rtrim(col))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (rtrim(col) = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.138 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE REPLACE(Col, ' ', '') LIKE N'exactmatch'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE REPLACE(Col, ' ', '') LIKE N'exactmatch' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: (((replace(col, ' '::"varchar", ''::"varchar"))::text ~~* 'exactmatch'::text COLLATE bbf_unicode_cp1_cs_as) AND (replace(col, ' '::"varchar", ''::"varchar") = 'exactmatch'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.007 ms +~~END~~ + + + +-- Case sensitivity +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'EXACT MATCH'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'PREFIX'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'PREFIX?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'aAbBcCdDeE'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'aAbBcCdDeE' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'aAbBcCdDeE'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'aAbBcCdDeE'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'PREFIX%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'PREFIX'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'PREFIX?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'EXACT MATCH'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'PREFIX%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'PREFIX'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'PREFIX?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + + +-- Covering index and scan variations +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.150 ms +~~END~~ + + +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.207 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT CASE WHEN EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%') THEN 1 ELSE 0 END; +GO +~~START~~ +text +Query Text: SELECT CASE WHEN EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%') THEN 1 ELSE 0 END +Result + InitPlan 1 + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.644 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'straße' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'straße'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'straße'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + + +-- Multiple LIKE conditions +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) OR (((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'test'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'test?'::"varchar" COLLATE bbf_unicode_cp1_ci_as))) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.153 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* '%abc'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.160 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id > 5; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id > 5 +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (id > 5)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.609 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id BETWEEN 1 AND 10; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id BETWEEN 1 AND 10 +Aggregate + -> Index Scan using babel_5966_testlikecollation_ci_as_pkey on babel_5966_testlikecollation_ci_as + Index Cond: ((id >= 1) AND (id <= 10)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.181 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col IS NOT NULL; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col IS NOT NULL +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col IS NOT NULL)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.151 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id IN (1, 2, 3, 4, 5); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id IN (1, 2, 3, 4, 5) +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (id = ANY ('{1,2,3,4,5}'::integer[]))) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.392 ms +~~END~~ + + + +-- LIKE in different query contexts +SELECT COUNT(*) +FROM BABEL_5966_TestLikeCollation_CI_AS t1 +JOIN BABEL_5966_TestLikeCollation_CI_AS t2 ON t1.Id = t2.Id +WHERE t1.Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) +FROM BABEL_5966_TestLikeCollation_CI_AS t1 +JOIN BABEL_5966_TestLikeCollation_CI_AS t2 ON t1.Id = t2.Id +WHERE t1.Col LIKE N'prefix%' +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as t2 + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 20.251 ms +~~END~~ + + +SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE N'pre%'; +GO +~~START~~ +text +Query Text: SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE N'pre%' +GroupAggregate + Group Key: ("left"(col, 3)) + -> Sort + Sort Key: ("left"(col, 3)) COLLATE bbf_unicode_cp1_ci_as + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((("left"(col, 3))::text ~~* 'pre%'::text COLLATE bbf_unicode_cp1_cs_as) AND ("left"(col, 3) >= 'pre'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND ("left"(col, 3) < 'pre?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 37.196 ms +~~END~~ + + +SELECT COUNT(CASE WHEN Col LIKE N'prefix%' THEN 1 END) FROM BABEL_5966_TestLikeCollation_CI_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(CASE WHEN Col LIKE N'prefix%' THEN 1 END) FROM BABEL_5966_TestLikeCollation_CI_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 27.945 ms +~~END~~ + + +SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +Limit + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.582 ms +~~END~~ + + +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' ORDER BY Col; +GO +~~START~~ +text +Query Text: SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' ORDER BY Col +Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.556 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id IN ( + SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id IN ( + SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +) +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.141 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS t1 +WHERE EXISTS ( + SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 + WHERE t2.Col LIKE N'prefix%' AND t2.Id = t1.Id +); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS t1 +WHERE EXISTS ( + SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 + WHERE t2.Col LIKE N'prefix%' AND t2.Id = t1.Id +) +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as t2 + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 16.262 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1) +Aggregate + InitPlan 1 + -> Limit + -> Index Scan using babel_5966_testlikecollation_ci_as_pkey on babel_5966_testlikecollation_ci_as babel_5966_testlikecollation_ci_as_1 + Index Cond: (id = 1) + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((InitPlan 1).col1)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 12.532 ms +~~END~~ + + + +-- CI_AS collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.104 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'EXACT MATCH'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'resume'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'café'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.102 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'caf'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'caf?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.130 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + + +-- CS_AS collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'EXACT MATCH'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'resume'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'café'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'caf'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'caf?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) OR ((col)::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- CI_AI collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.105 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'résumé' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.101 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'res%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'res%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'res%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'res'::nvarchar) AND (remove_accents_internal((col)::text) < 'res?'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'naive'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'naive'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar) OR ((remove_accents_internal((col)::text))::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + + +-- CS_AI collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'RESUME'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'RESUME'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'res%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'res%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'res%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'res'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'res?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.107 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) OR ((remove_accents_internal((col)::text))::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + + +-- Cross-collation via COLLATE clause +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 6.535 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.101 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CS_AI; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CS_AI +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.101 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.134 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.101 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.179 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE (N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AS); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE (N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AS) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.104 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CS_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.102 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AI +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + + +-- NVARCHAR columns with all collations +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_cs_asbabel_8042afedf3be7883adbc9452d1114ad8 on babel_5966_testlikenvarcollation_cs_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_cs_asbabel_8042afedf3be7883adbc9452d1114ad8 on babel_5966_testlikenvarcollation_cs_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.106 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.134 ms +~~END~~ + + + +-- CHAR columns with all collations +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.100 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'EXACT MATCH'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'resume' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'resume'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.125 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'EXACT MATCH'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'resume' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'resume'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col <> 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) OR ((col)::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'résumé' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'cafe'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'cafe' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'naive'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'naive' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'naive'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'naive'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar) OR ((remove_accents_internal((col)::text))::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'résumé' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'RESUME' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'RESUME'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'RESUME'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) OR ((remove_accents_internal((col)::text))::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- Cross-datatype with collations +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'café'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'café'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'café' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'café' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'café'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'café' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_cs_asbabel_8042afedf3be7883adbc9452d1114ad8 on babel_5966_testlikenvarcollation_cs_as + Index Cond: (col = 'café'::nvarchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.105 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'café' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'café' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'café' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'café' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'café' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'café' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + + +-- Safety tests for evaluate_expr +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", (col)::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.122 ms +~~END~~ + + +DECLARE @p VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @p); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT 'exact match' + Query Text: SELECT 'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), "@p") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.190 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @p); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'prefix%' + Query Text: SELECT N'prefix%' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), "@p") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.167 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@p AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@p" AS VARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.169 ms +~~END~~ + + +DECLARE @p VARCHAR(50) = 'test'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p + '%'; +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT 'test' + Query Text: SELECT 'test' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p" + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(NULL::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.154 ms +~~END~~ + + +-- Volatile functions +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), NEWID()); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), NEWID()) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", newid(), false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.512 ms +~~END~~ + + +-- Subquery pattern +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1) +Aggregate + InitPlan 1 + -> Limit + -> Index Scan using babel_5966_testlikecollation_ci_as_pkey on babel_5966_testlikecollation_ci_as babel_5966_testlikecollation_ci_as_1 + Index Cond: (id = 1) + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((InitPlan 1).col1)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.161 ms +~~END~~ + + +SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE 'pre%'; +GO +~~START~~ +text +Query Text: SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE 'pre%' +GroupAggregate + Group Key: ("left"(col, 3)) + -> Sort + Sort Key: ("left"(col, 3)) COLLATE bbf_unicode_cp1_ci_as + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((("left"(col, 3))::text ~~* 'pre%'::text COLLATE bbf_unicode_cp1_cs_as) AND ("left"(col, 3) >= 'pre'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND ("left"(col, 3) < 'pre?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.204 ms +~~END~~ + + + +-- CHAR(N) / NCHAR(N) Pattern Tests +SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.172 ms +~~END~~ + + +SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.141 ms +~~END~~ + + +SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.191 ms +~~END~~ + + +SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.127 ms +~~END~~ + + +SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.123 ms +~~END~~ + + +SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + +SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + +SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + +SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.236 ms +~~END~~ + + +SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match '::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.135 ms +~~END~~ + + +SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match '::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match '::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.122 ms +~~END~~ + + +SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'pre'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'pre?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'pre%abc '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.120 ms +~~END~~ + + +SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.131 ms +~~END~~ + + +SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match '::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.123 ms +~~END~~ + + +SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.230 ms +~~END~~ + + +SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.194 ms +~~END~~ + + +SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.208 ms +~~END~~ + + +SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + +SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.123 ms +~~END~~ + + +SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match '::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match '::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + + +-- Views +SELECT COUNT(*) FROM BABEL_5966_vw_like_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_exact +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.076 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_suffix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_suffix +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.079 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_contains; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_contains +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_single_char; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_single_char +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_not_like; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_not_like +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text !~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'zzz'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR (col >= 'zzz?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_not_like_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_not_like_exact +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_exact +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_suffix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_suffix +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_char_exact +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_char_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_suffix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_char_suffix +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_or; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_or +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) OR (((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'test'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'test?'::"varchar" COLLATE bbf_unicode_cp1_ci_as))) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_and; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_and +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* '%abc'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_pct; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_pct +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_underscore; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_underscore +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'café'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.073 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'caf'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'caf?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.070 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_varchar; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_varchar +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_nvarchar; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_nvarchar +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.070 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_char; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_char +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.075 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.072 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.084 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.073 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.072 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.073 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai_prefix +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.072 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai_prefix +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nested; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nested +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix_a%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.072 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_with_id; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_with_id +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (id > 0)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.072 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix_a%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix_a%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + + +-- Procedures +EXEC BABEL_5966_sp_like_exact_const; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_exact_const + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.603 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_prefix_const; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_prefix_const + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_suffix_const; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_suffix_const + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param '%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param '%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param NULL; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param NULL + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param ''; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param '' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'nonexistent_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.059 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%data%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'%data%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'café' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.063 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'caf%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'caf%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('caf%'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('EXACT MATCH'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('PREFIX%'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'prefix%' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.259 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'exact match' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.060 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'%match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'%match' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'café' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.060 ms +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'zzz%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_not_like_param N'zzz%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.121 ms +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_not_like_param N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_not_like_param N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'100!%done', '!'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_escape N'100!%done', '!' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ESCAPE "@esc" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.176 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'under!_score', '!'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_escape N'under!_score', '!' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ESCAPE "@esc" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.064 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'prefix'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'prefix' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('prefix'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.140 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'test'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'test' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('test'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'exact'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'exact' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('exact'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'zzz'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'zzz' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('zzz'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.059 ms +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT; +SELECT @result AS output_prefix; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT + Query Text: SELECT sys.pltsql_assign_var(1, cast((COUNT(*)) as int)) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT "@result" AS output_prefix +Result +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.151 ms +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT; +SELECT @result AS output_exact; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT + Query Text: SELECT sys.pltsql_assign_var(1, cast((COUNT(*)) as int)) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT "@result" AS output_exact +Result +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.149 ms +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT; +SELECT @result AS output_suffix; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT + Query Text: SELECT sys.pltsql_assign_var(1, cast((COUNT(*)) as int)) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT "@result" AS output_suffix +Result +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.140 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'exact match' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.277 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'prefix%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'PREFIX%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'PREFIX%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'café' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.060 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'resume'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'resume' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('resume'::nvarchar(50))::text) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ ('resume'::nvarchar(50))::text) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'exact match' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.280 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'prefix%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'resume'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'resume' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'exact match' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.372 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.060 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'prefix%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.074 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'café' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.061 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_with_cast 'exact match' + Query Text: SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS VARCHAR(50)) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS NVARCHAR(50)) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.277 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_with_cast 'prefix%' + Query Text: SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS VARCHAR(50)) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS NVARCHAR(50)) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%' + Query Text: SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" AND Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as)) + Query Text: SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" OR Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.471 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%' + Query Text: SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" AND Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as)) + Query Text: SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" OR Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR ((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.066 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match' + Query Text: SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" AND Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) + Query Text: SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" OR Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_subquery N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS + WHERE Id IN (SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern") + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.005 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_subquery N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS + WHERE Id IN (SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern") + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.058 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_exists N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS t1 + WHERE EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 WHERE t2.Col LIKE "@pattern" AND t2.Id = t1.Id) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as t2 + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.885 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_exists N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS t1 + WHERE EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 WHERE t2.Col LIKE "@pattern" AND t2.Id = t1.Id) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as t2 + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.058 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'prefix%', 3; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_top N'prefix%', 3 + Query Text: SELECT TOP("@top") Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ORDER BY Col + -> Limit + -> Sort + Sort Key: col COLLATE bbf_unicode_cp1_ci_as NULLS FIRST + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 1.161 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'zzz%', 5; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_top N'zzz%', 5 + Query Text: SELECT TOP("@top") Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ORDER BY Col + -> Limit + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.063 ms +~~END~~ + + +-- Repeated execution +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +EXEC BABEL_5966_sp_like_varchar_param '%match'; +EXEC BABEL_5966_sp_like_varchar_param 'test%'; +EXEC BABEL_5966_sp_like_varchar_param 'a%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param '%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'test%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'a%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'a%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.209 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'test%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'a%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('exact match'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('prefix%'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('%match'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'test%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('test%'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'a%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('a%'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.153 ms +~~END~~ + + +SET babelfish_showplan_all OFF; +GO + + +-- Result correctness +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%data%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + + +-- Cross-type +SELECT COUNT(*) AS varchar_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS char_nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nvarchar_plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS varchar_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS varchar_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS nvarchar_varchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nvarchar_nvarchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS char_varchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS char_nvarchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS varchar_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS varchar_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS varchar_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS nvarchar_varchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nvarchar_nvarchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nvarchar_char FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS char_varchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS char_nvarchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS char_char FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- CAST/CONVERT patterns +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +SELECT COUNT(*) AS cast_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS convert_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match'); +SELECT COUNT(*) AS convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +SELECT COUNT(*) AS nested_cast FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +SELECT COUNT(*) AS triple_cast FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +SELECT COUNT(*) AS convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS try_cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS try_cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS try_convert_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match'); +SELECT COUNT(*) AS try_convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS try_cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +SELECT COUNT(*) AS try_convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +SELECT COUNT(*) AS try_cast FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +SELECT COUNT(*) AS tc_result FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), N'exact match'); +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +SELECT COUNT(*) AS try_cast FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +GO +~~START~~ +int +5 +~~END~~ + +SELECT COUNT(*) AS try_c FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + + +-- TRY_CAST returning NULL (invalid conversion) +SELECT COUNT(*) AS try_cast_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS isnull_first FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback'); +SELECT COUNT(*) AS isnull_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match'); +SELECT COUNT(*) AS coalesce_first FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback'); +SELECT COUNT(*) AS coalesce_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'exact match'); +SELECT COUNT(*) AS nullif_diff FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS isnull_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%'); +SELECT COUNT(*) AS coalesce_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +-- NULLIF returns NULL when args match +SELECT COUNT(*) AS nullif_same FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match'); +GO +~~START~~ +int +0 +~~END~~ + + +-- ISNULL with all NULLs +SELECT COUNT(*) AS isnull_both_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, NULL); +GO +~~START~~ +int +0 +~~END~~ + + + +-- Special characters +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '100!%done' ESCAPE '!'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'under!_score' ESCAPE '!'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'back\slash'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'single''quote'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + + +-- Unicode/accented +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'résumé'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'straße'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'naïve'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'naïve'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'caf%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'rés%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + + +-- Case sensitivity +SELECT COUNT(*) AS lower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nlower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nupper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS lower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'PREFIX%'; +SELECT COUNT(*) AS nlower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS nupper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + + +-- NULL handling +SELECT COUNT(*) AS like_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL; +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS not_like_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL; +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS cast_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)); +GO +~~START~~ +int +0 +~~END~~ + + + +-- Boundary cases +SELECT COUNT(*) AS empty_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ''; +SELECT COUNT(*) AS empty_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS single_a_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'a'; +SELECT COUNT(*) AS single_a_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS underscore_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '_'; +SELECT COUNT(*) AS underscore_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS pct_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%'; +SELECT COUNT(*) AS pct_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO +~~START~~ +int +20048 +~~END~~ + +~~START~~ +int +20048 +~~END~~ + + +SELECT COUNT(*) AS spaces_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ' spaces '; +SELECT COUNT(*) AS spaces_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces '; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS trailing_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'trailing '; +SELECT COUNT(*) AS trailing_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing '; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS leading_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ' lead%'; +SELECT COUNT(*) AS leading_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS nonexist_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'nonexistent_value_xyz'; +SELECT COUNT(*) AS nonexist_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +0 +~~END~~ + + + +-- Collation CI_AS +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Collation CS_AS +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + + +-- Collation CI_AI +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +6 +~~END~~ + +~~START~~ +int +6 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'cafe'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'naive'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive'; +GO +~~START~~ +int +6 +~~END~~ + +~~START~~ +int +6 +~~END~~ + + + +-- Collation CS_AI +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'résumé'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'RESUME'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + + +-- NOT LIKE with collations +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20047 +~~END~~ + +~~START~~ +int +20047 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20047 +~~END~~ + +~~START~~ +int +20047 +~~END~~ + + + +-- Variables +DECLARE @v VARCHAR(50) = 'exact match'; +DECLARE @n NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +DECLARE @v VARCHAR(50) = 'prefix%'; +DECLARE @n NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +DECLARE @v VARCHAR(50) = '%match'; +DECLARE @n NVARCHAR(50) = N'%match'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Expression patterns +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS concat_n FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match'; +SELECT COUNT(*) AS fn_concat FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS upper_fn FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS lower_fn FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Multiple conditions +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' AND Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' OR Col LIKE 'test%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%'; +GO +~~START~~ +int +8 +~~END~~ + +~~START~~ +int +8 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' AND Col LIKE '%abc'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- NVARCHAR column +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +4 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20036 +~~END~~ + +~~START~~ +int +20036 +~~END~~ + + + +-- CHAR column +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20043 +~~END~~ + +~~START~~ +int +20043 +~~END~~ + + + +-- NVARCHAR collation tables +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +4 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + + +-- CHAR collation tables +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Cross-collation COLLATE clause +SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS ci_as_cs_collate FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cs_as_ci_collate FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS ci_as_ai_collate FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +6 +~~END~~ + + + +-- CHAR(N) / NCHAR(N) Pattern Tests +-- CHAR pattern exact match — should NOT match (trailing spaces) +SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern same length — should match (no padding) +SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +GO +~~START~~ +int +3 +~~END~~ + + +-- Compare: CHAR(11) should match, CHAR(20) should NOT +SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with wildcard at end — should still work +SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with large padding +SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR(1) pattern +SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)); +GO +~~START~~ +int +2 +~~END~~ + + +-- CHAR(10) with single char — padded with 9 spaces +SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR(1) with wildcard +SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)); +GO +~~START~~ +int +20048 +~~END~~ + + +-- CHAR(10) with wildcard — becomes '% ' +SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)); +GO +~~START~~ +int +0 +~~END~~ + + +-- NOT LIKE with CHAR pattern +SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +20048 +~~END~~ + + +-- NVARCHAR column with CHAR pattern +SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR column with CHAR pattern (same length as column) +SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + + +-- CHAR column with CHAR pattern (different length) +SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +3 +~~END~~ + + +-- CHAR pattern with leading wildcard +SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with middle wildcard +SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- NCHAR patterns +SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with CONVERT +SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match'); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%'); +GO +~~START~~ +int +0 +~~END~~ + + +-- Nested CHAR casts +SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern across collations +SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + + +-- Views +SELECT COUNT(*) AS vw_exact_varchar FROM BABEL_5966_vw_like_exact; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_varchar FROM BABEL_5966_vw_like_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_suffix_varchar FROM BABEL_5966_vw_like_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_contains_varchar FROM BABEL_5966_vw_like_contains; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_single_char_varchar FROM BABEL_5966_vw_like_single_char; +GO +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS vw_not_like FROM BABEL_5966_vw_not_like; +GO +~~START~~ +int +48 +~~END~~ + + +SELECT COUNT(*) AS vw_not_like_exact FROM BABEL_5966_vw_not_like_exact; +GO +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS vw_exact_nvarchar FROM BABEL_5966_vw_like_nvar_exact; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_nvarchar FROM BABEL_5966_vw_like_nvar_prefix; +GO +~~START~~ +int +4 +~~END~~ + + +SELECT COUNT(*) AS vw_suffix_nvarchar FROM BABEL_5966_vw_like_nvar_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_exact_char FROM BABEL_5966_vw_like_char_exact; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_char FROM BABEL_5966_vw_like_char_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_suffix_char FROM BABEL_5966_vw_like_char_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_or FROM BABEL_5966_vw_like_or; +GO +~~START~~ +int +8 +~~END~~ + + +SELECT COUNT(*) AS vw_and FROM BABEL_5966_vw_like_and; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_mixed FROM BABEL_5966_vw_like_and; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_escape_pct FROM BABEL_5966_vw_like_escape_pct; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_escape_underscore FROM BABEL_5966_vw_like_escape_underscore; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_unicode FROM BABEL_5966_vw_like_unicode; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_unicode_prefix FROM BABEL_5966_vw_like_unicode_prefix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cast_varchar FROM BABEL_5966_vw_like_cast_varchar; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cast_nvarchar FROM BABEL_5966_vw_like_cast_nvarchar; +GO +~~START~~ +int +5 +~~END~~ + + +-- CHAR(20) pattern: should return 0 (trailing spaces, no match) +SELECT COUNT(*) AS vw_cast_char FROM BABEL_5966_vw_like_cast_char; +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_as FROM BABEL_5966_vw_like_ci_as; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_as FROM BABEL_5966_vw_like_cs_as; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_ai FROM BABEL_5966_vw_like_ci_ai; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_ai FROM BABEL_5966_vw_like_cs_ai; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_as_prefix FROM BABEL_5966_vw_like_ci_as_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_as_prefix FROM BABEL_5966_vw_like_cs_as_prefix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_ai_prefix FROM BABEL_5966_vw_like_ci_ai_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_ai_prefix FROM BABEL_5966_vw_like_cs_ai_prefix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_nested FROM BABEL_5966_vw_like_nested; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_with_id FROM BABEL_5966_vw_like_with_id; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_filter FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_nvar_filter FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS vw_join FROM BABEL_5966_vw_like_prefix v +JOIN BABEL_5966_vw_like_nvar_prefix n ON v.Id = n.Id; +GO +~~START~~ +int +4 +~~END~~ + + + +-- Procedures +EXEC BABEL_5966_sp_like_exact_const; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_prefix_const; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_suffix_const; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%'; +GO +~~START~~ +int +20048 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param NULL; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param ''; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz'; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%data%'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'café'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'caf%'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'zzz%'; +GO +~~START~~ +int +48 +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'prefix%'; +GO +~~START~~ +int +20043 +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'100!%done', '!'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'under!_score', '!'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'prefix'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'test'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'exact'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'zzz'; +GO +~~START~~ +int +20000 +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT; +SELECT @result AS output_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT; +SELECT @result AS output_exact; +GO +~~START~~ +int +3 +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT; +SELECT @result AS output_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'PREFIX%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'resume'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +6 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'prefix%'; +GO +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'resume'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%'; +GO +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +8 +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'prefix%', 3; +GO +~~START~~ +varchar +prefix_abc +PREFIX_ABC +Prefix_Abc +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'zzz%', 5; +GO +~~START~~ +varchar +zzz_filler_1 +zzz_filler_10 +zzz_filler_100 +zzz_filler_1000 +zzz_filler_10000 +~~END~~ + + +-- Repeated execution +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +EXEC BABEL_5966_sp_like_varchar_param '%match'; +EXEC BABEL_5966_sp_like_varchar_param 'test%'; +EXEC BABEL_5966_sp_like_varchar_param 'a%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +9 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'test%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'a%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +9 +~~END~~ + + + +-- sp_executesql +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'%match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'prefix%'; +GO +~~START~~ +int +4 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = NULL; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'EXACT MATCH'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'resume'; +GO +~~START~~ +int +6 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'resume'; +GO +~~START~~ +int +2 +~~END~~ + + + + +-- CHECK Constraints +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('valid_data'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('valid'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('invalid_data'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_prefix" violates check constraint "babel_5966_testlikecheck_prefix_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_nprefix (Col) VALUES ('valid_data'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_nprefix (Col) VALUES ('invalid_data'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_nprefix" violates check constraint "babel_5966_testlikecheck_nprefix_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('good_data'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('ok_data'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('bad_data'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_not_like" violates check constraint "babel_5966_testlikecheck_not_like_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('100%done'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('100%almost'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('200%done'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_escape" violates check constraint "babel_5966_testlikecheck_escape_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('is_valid'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('also_valid'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('invalid'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_prefix; +GO +~~START~~ +int#!#varchar +1#!#valid_data +2#!#valid +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_nprefix; +GO +~~START~~ +int#!#varchar +1#!#valid_data +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_not_like; +GO +~~START~~ +int#!#varchar +1#!#good_data +2#!#ok_data +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_escape; +GO +~~START~~ +int#!#varchar +1#!#100%done +2#!#100%almost +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_suffix; +GO +~~START~~ +int#!#varchar +1#!#is_valid +2#!#also_valid +3#!#invalid +~~END~~ + + + +-- UPDATE / DELETE +UPDATE BABEL_5966_TestLikeCollation_CI_AS SET Col = Col WHERE Col LIKE N'prefix%'; +SELECT @@ROWCOUNT AS update_prefix; +GO +~~ROW COUNT: 5~~ + +~~START~~ +int +5 +~~END~~ + + +UPDATE BABEL_5966_TestLikeCollation_CI_AS SET Col = Col WHERE Col NOT LIKE N'zzz%'; +SELECT @@ROWCOUNT AS update_not_zzz; +GO +~~ROW COUNT: 48~~ + +~~START~~ +int +48 +~~END~~ + + +DELETE FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_xyz_abc%'; +SELECT @@ROWCOUNT AS delete_none; +GO +~~START~~ +int +0 +~~END~~ + + +exec sp_babelfish_configure 'explain_costs', 'off'; +GO + +SELECT set_config('enable_bitmapscan', 'on', false); +GO +~~START~~ +text +on +~~END~~ + diff --git a/test/JDBC/expected/db_collation/test_constraint_like-vu-prepare.out b/test/JDBC/expected/db_collation/test_constraint_like-vu-prepare.out index b14a23d2a0f..4883eb8615f 100644 --- a/test/JDBC/expected/db_collation/test_constraint_like-vu-prepare.out +++ b/test/JDBC/expected/db_collation/test_constraint_like-vu-prepare.out @@ -414,7 +414,7 @@ SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo GO ~~START~~ text -CHECK ((((sys.remove_accents_internal(((('123'::sys."varchar" COLLATE sys.bbf_unicode_cp1_ci_ai)::sys.nvarchar(3))::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ((sys.remove_accents_internal(((123)::sys."varchar"(3))::text))::text COLLATE sys.bbf_unicode_cp1_cs_as))) +CHECK ((((sys.remove_accents_internal(((('123'::sys."varchar" COLLATE sys.bbf_unicode_cp1_ci_ai)::sys.nvarchar(3))::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('123'::text COLLATE sys.bbf_unicode_cp1_cs_as))) ~~END~~ diff --git a/test/JDBC/expected/db_collation/test_constraint_like-vu-verify.out b/test/JDBC/expected/db_collation/test_constraint_like-vu-verify.out index 984ebdf7c58..72589b2e608 100644 --- a/test/JDBC/expected/db_collation/test_constraint_like-vu-verify.out +++ b/test/JDBC/expected/db_collation/test_constraint_like-vu-verify.out @@ -699,7 +699,7 @@ SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo GO ~~START~~ text -CHECK ((((sys.remove_accents_internal(((('123'::sys."varchar" COLLATE sys.bbf_unicode_cp1_ci_ai)::sys.nvarchar(3))::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ((sys.remove_accents_internal(((123)::sys."varchar"(3))::text))::text COLLATE sys.bbf_unicode_cp1_cs_as))) +CHECK ((((sys.remove_accents_internal(((('123'::sys."varchar" COLLATE sys.bbf_unicode_cp1_ci_ai)::sys.nvarchar(3))::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('123'::text COLLATE sys.bbf_unicode_cp1_cs_as))) ~~END~~ diff --git a/test/JDBC/expected/like_op_index_scan-before-15_2-vu-cleanup.out b/test/JDBC/expected/like_op_index_scan-before-15_2-vu-cleanup.out new file mode 100644 index 00000000000..43cac8bf45a --- /dev/null +++ b/test/JDBC/expected/like_op_index_scan-before-15_2-vu-cleanup.out @@ -0,0 +1,85 @@ +DROP VIEW BABEL_5966_vw_like_nested; +DROP VIEW BABEL_5966_vw_like_exact; +DROP VIEW BABEL_5966_vw_like_prefix; +DROP VIEW BABEL_5966_vw_like_suffix; +DROP VIEW BABEL_5966_vw_like_contains; +DROP VIEW BABEL_5966_vw_like_single_char; +DROP VIEW BABEL_5966_vw_not_like; +DROP VIEW BABEL_5966_vw_not_like_exact; +DROP VIEW BABEL_5966_vw_like_nvar_exact; +DROP VIEW BABEL_5966_vw_like_nvar_prefix; +DROP VIEW BABEL_5966_vw_like_nvar_suffix; +DROP VIEW BABEL_5966_vw_like_char_exact; +DROP VIEW BABEL_5966_vw_like_char_prefix; +DROP VIEW BABEL_5966_vw_like_char_suffix; +DROP VIEW BABEL_5966_vw_like_or; +DROP VIEW BABEL_5966_vw_like_and; +DROP VIEW BABEL_5966_vw_like_escape_pct; +DROP VIEW BABEL_5966_vw_like_escape_underscore; +DROP VIEW BABEL_5966_vw_like_unicode; +DROP VIEW BABEL_5966_vw_like_unicode_prefix; +DROP VIEW BABEL_5966_vw_like_cast_varchar; +DROP VIEW BABEL_5966_vw_like_cast_nvarchar; +DROP VIEW BABEL_5966_vw_like_cast_char; +DROP VIEW BABEL_5966_vw_like_ci_as; +DROP VIEW BABEL_5966_vw_like_cs_as; +DROP VIEW BABEL_5966_vw_like_ci_ai; +DROP VIEW BABEL_5966_vw_like_cs_ai; +DROP VIEW BABEL_5966_vw_like_ci_as_prefix; +DROP VIEW BABEL_5966_vw_like_cs_as_prefix; +DROP VIEW BABEL_5966_vw_like_ci_ai_prefix; +DROP VIEW BABEL_5966_vw_like_cs_ai_prefix; +DROP VIEW BABEL_5966_vw_like_with_id; +GO + +DROP PROCEDURE BABEL_5966_sp_like_exact_const; +DROP PROCEDURE BABEL_5966_sp_like_prefix_const; +DROP PROCEDURE BABEL_5966_sp_like_suffix_const; +DROP PROCEDURE BABEL_5966_sp_like_varchar_param; +DROP PROCEDURE BABEL_5966_sp_like_nvarchar_param; +DROP PROCEDURE BABEL_5966_sp_like_all_types; +DROP PROCEDURE BABEL_5966_sp_not_like_param; +DROP PROCEDURE BABEL_5966_sp_like_escape; +DROP PROCEDURE BABEL_5966_sp_like_dynamic; +DROP PROCEDURE BABEL_5966_sp_like_output; +DROP PROCEDURE BABEL_5966_sp_like_all_collations; +DROP PROCEDURE BABEL_5966_sp_like_nvar_collations; +DROP PROCEDURE BABEL_5966_sp_like_char_collations; +DROP PROCEDURE BABEL_5966_sp_like_with_cast; +DROP PROCEDURE BABEL_5966_sp_like_multi_condition; +DROP PROCEDURE BABEL_5966_sp_like_subquery; +DROP PROCEDURE BABEL_5966_sp_like_exists; +DROP PROCEDURE BABEL_5966_sp_like_top; +GO + +DROP TABLE BABEL_5966_TestLikeCollation_CI_AS; +GO +DROP TABLE BABEL_5966_TestLikeCollation_CS_AS; +GO +DROP TABLE BABEL_5966_TestLikeCollation_CI_AI; +GO +DROP TABLE BABEL_5966_TestLikeCollation_CS_AI; +GO +DROP TABLE BABEL_5966_TestLikeNVarCollation_CI_AS; +GO +DROP TABLE BABEL_5966_TestLikeNVarCollation_CS_AS; +GO +DROP TABLE BABEL_5966_TestLikeNVarCollation_CI_AI; +GO +DROP TABLE BABEL_5966_TestLikeNVarCollation_CS_AI; +GO +DROP TABLE BABEL_5966_TestLikeCharCollation_CI_AS; +GO +DROP TABLE BABEL_5966_TestLikeCharCollation_CS_AS; +GO +DROP TABLE BABEL_5966_TestLikeCharCollation_CI_AI; +GO +DROP TABLE BABEL_5966_TestLikeCharCollation_CS_AI; +GO + +DROP TABLE BABEL_5966_TestLikeCheck_prefix; +DROP TABLE BABEL_5966_TestLikeCheck_nprefix; +DROP TABLE BABEL_5966_TestLikeCheck_not_like; +DROP TABLE BABEL_5966_TestLikeCheck_escape; +DROP TABLE BABEL_5966_TestLikeCheck_suffix; +GO diff --git a/test/JDBC/expected/like_op_index_scan-before-15_2-vu-prepare.out b/test/JDBC/expected/like_op_index_scan-before-15_2-vu-prepare.out new file mode 100644 index 00000000000..45800b49a4b --- /dev/null +++ b/test/JDBC/expected/like_op_index_scan-before-15_2-vu-prepare.out @@ -0,0 +1,496 @@ +CREATE TABLE BABEL_5966_TestLikeCollation_CI_AS ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeCollation_CS_AS ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeCollation_CI_AI ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AI +); +GO + +CREATE TABLE BABEL_5966_TestLikeCollation_CS_AI ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AI +); +GO + +CREATE INDEX BABEL_5966_idx_ci_as ON BABEL_5966_TestLikeCollation_CI_AS(Col); +CREATE INDEX BABEL_5966_idx_cs_as ON BABEL_5966_TestLikeCollation_CS_AS(Col); +GO + +INSERT INTO BABEL_5966_TestLikeCollation_CI_AS (Col) +VALUES ('exact match'), ('EXACT MATCH'), ('Exact Match'), + ('prefix_abc'), ('PREFIX_ABC'), ('Prefix_Abc'), + ('prefix_def'), ('prefix_ghi'), + ('something else'), ('another value'), + ('test data 1'), ('test data 2'), ('test data 3'), + ('UPPER CASE'), ('mixed Case'), + ('café'), ('CAFÉ'), ('Café'), + ('résumé'), ('RÉSUMÉ'), ('Résumé'), + ('naïve'), ('NAÏVE'), ('Naïve'), + ('resume'), ('RESUME'), ('Resume'), + ('naive'), ('NAIVE'), ('Naive'), + ('straße'), ('STRASSE'), ('Straße'), + ('a'), ('A'), ('ab'), ('abc'), ('ABC'), + ('100%done'), ('under_score'), + ('back\slash'), ('single''quote'), + (' spaces '), ('trailing '), (' leading'), + ('aaaaaaaaaa'), ('AAAAAAAAAA'), ('aAbBcCdDeE'); +GO +~~ROW COUNT: 48~~ + + +INSERT INTO BABEL_5966_TestLikeCollation_CI_AS (Col) +SELECT 'zzz_filler_' + CAST(n AS VARCHAR(10)) +FROM generate_series(1, 20000) AS n; +GO +~~ROW COUNT: 20000~~ + + +INSERT INTO BABEL_5966_TestLikeCollation_CS_AS (Col) +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS; +GO +~~ROW COUNT: 20048~~ + + +INSERT INTO BABEL_5966_TestLikeCollation_CI_AI (Col) +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS; +GO +~~ROW COUNT: 20048~~ + + +INSERT INTO BABEL_5966_TestLikeCollation_CS_AI (Col) +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS; +GO +~~ROW COUNT: 20048~~ + + +CREATE TABLE BABEL_5966_TestLikeNVarCollation_CI_AS ( + Id INT IDENTITY PRIMARY KEY, + Col NVARCHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeNVarCollation_CS_AS ( + Id INT IDENTITY PRIMARY KEY, + Col NVARCHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeNVarCollation_CI_AI ( + Id INT IDENTITY PRIMARY KEY, + Col NVARCHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AI +); +GO + +CREATE TABLE BABEL_5966_TestLikeNVarCollation_CS_AI ( + Id INT IDENTITY PRIMARY KEY, + Col NVARCHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AI +); +GO + +CREATE INDEX BABEL_5966_idx_nvar_ci_as ON BABEL_5966_TestLikeNVarCollation_CI_AS(Col); +CREATE INDEX BABEL_5966_idx_nvar_cs_as ON BABEL_5966_TestLikeNVarCollation_CS_AS(Col); +GO + +INSERT INTO BABEL_5966_TestLikeNVarCollation_CI_AS (Col) +VALUES (N'exact match'), (N'EXACT MATCH'), (N'Exact Match'), + (N'prefix_abc'), (N'PREFIX_ABC'), + (N'prefix_def'), (N'prefix_ghi'), + (N'something else'), (N'another value'), + (N'test data 1'), (N'test data 2'), (N'test data 3'), + (N'café'), (N'CAFÉ'), + (N'résumé'), (N'RÉSUMÉ'), (N'resume'), (N'RESUME'), + (N'naïve'), (N'NAÏVE'), (N'naive'), (N'NAIVE'), + (N'straße'), (N'STRASSE'), + (N'a'), (N'A'), (N'ab'), (N'abc'), (N'ABC'), + (N'100%done'), (N'under_score'), + (N'back\slash'), (N'single''quote'), + (N' spaces '), (N'trailing '), (N' leading'), + (N'aaaaaaaaaa'), (N'AAAAAAAAAA'), (N'aAbBcCdDeE'); +GO +~~ROW COUNT: 39~~ + + +INSERT INTO BABEL_5966_TestLikeNVarCollation_CI_AS (Col) +SELECT N'zzz_filler_' + CAST(n AS NVARCHAR(10)) +FROM generate_series(1, 20000) AS n; +GO +~~ROW COUNT: 20000~~ + + +INSERT INTO BABEL_5966_TestLikeNVarCollation_CS_AS (Col) SELECT Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS; +INSERT INTO BABEL_5966_TestLikeNVarCollation_CI_AI (Col) SELECT Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS; +INSERT INTO BABEL_5966_TestLikeNVarCollation_CS_AI (Col) SELECT Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS; +GO +~~ROW COUNT: 20039~~ + +~~ROW COUNT: 20039~~ + +~~ROW COUNT: 20039~~ + + +CREATE TABLE BABEL_5966_TestLikeCharCollation_CI_AS ( + Id INT IDENTITY PRIMARY KEY, + Col CHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeCharCollation_CS_AS ( + Id INT IDENTITY PRIMARY KEY, + Col CHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeCharCollation_CI_AI ( + Id INT IDENTITY PRIMARY KEY, + Col CHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AI +); +GO + +CREATE TABLE BABEL_5966_TestLikeCharCollation_CS_AI ( + Id INT IDENTITY PRIMARY KEY, + Col CHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AI +); +GO + +CREATE INDEX BABEL_5966_idx_char_ci_as ON BABEL_5966_TestLikeCharCollation_CI_AS(Col); +CREATE INDEX BABEL_5966_idx_char_cs_as ON BABEL_5966_TestLikeCharCollation_CS_AS(Col); +GO + +INSERT INTO BABEL_5966_TestLikeCharCollation_CI_AS (Col) +VALUES ('exact match'), ('EXACT MATCH'), ('Exact Match'), + ('prefix_abc'), ('PREFIX_ABC'), ('Prefix_Abc'), + ('prefix_def'), ('prefix_ghi'), + ('something else'), ('another value'), + ('test data 1'), ('test data 2'), ('test data 3'), + ('café'), ('CAFÉ'), ('Café'), + ('résumé'), ('RÉSUMÉ'), ('Résumé'), + ('naïve'), ('NAÏVE'), ('Naïve'), + ('resume'), ('RESUME'), ('Resume'), + ('naive'), ('NAIVE'), ('Naive'), + ('straße'), ('STRASSE'), ('Straße'), + ('a'), ('A'), ('ab'), ('abc'), ('ABC'), + ('100%done'), ('under_score'), + ('back\slash'), ('single''quote'), + (' spaces '), ('trailing '), (' leading'), + ('aaaaaaaaaa'), ('AAAAAAAAAA'), ('aAbBcCdDeE'); +GO +~~ROW COUNT: 46~~ + + +INSERT INTO BABEL_5966_TestLikeCharCollation_CI_AS (Col) +SELECT 'zzz_filler_' + CAST(n AS VARCHAR(10)) +FROM generate_series(1, 20000) AS n; +GO +~~ROW COUNT: 20000~~ + + +INSERT INTO BABEL_5966_TestLikeCharCollation_CS_AS (Col) SELECT Col FROM BABEL_5966_TestLikeCharCollation_CI_AS; +INSERT INTO BABEL_5966_TestLikeCharCollation_CI_AI (Col) SELECT Col FROM BABEL_5966_TestLikeCharCollation_CI_AS; +INSERT INTO BABEL_5966_TestLikeCharCollation_CS_AI (Col) SELECT Col FROM BABEL_5966_TestLikeCharCollation_CI_AS; +GO +~~ROW COUNT: 20046~~ + +~~ROW COUNT: 20046~~ + +~~ROW COUNT: 20046~~ + + + +-- Views (using CI_AS explicit collation tables) +CREATE VIEW BABEL_5966_vw_like_exact AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_suffix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +CREATE VIEW BABEL_5966_vw_like_contains AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO + +CREATE VIEW BABEL_5966_vw_like_single_char AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_'; +GO + +CREATE VIEW BABEL_5966_vw_not_like AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'zzz%'; +GO + +CREATE VIEW BABEL_5966_vw_not_like_exact AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_nvar_exact AS +SELECT Id, Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_nvar_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_nvar_suffix AS +SELECT Id, Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +CREATE VIEW BABEL_5966_vw_like_char_exact AS +SELECT Id, Col FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_char_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_char_suffix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +CREATE VIEW BABEL_5966_vw_like_or AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS +WHERE Col LIKE N'prefix%' OR Col LIKE N'test%'; +GO + +CREATE VIEW BABEL_5966_vw_like_and AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS +WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc'; +GO + +CREATE VIEW BABEL_5966_vw_like_escape_pct AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO + +CREATE VIEW BABEL_5966_vw_like_escape_underscore AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO + +CREATE VIEW BABEL_5966_vw_like_unicode AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO + +CREATE VIEW BABEL_5966_vw_like_unicode_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO + +CREATE VIEW BABEL_5966_vw_like_cast_varchar AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +CREATE VIEW BABEL_5966_vw_like_cast_nvarchar AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +GO + +CREATE VIEW BABEL_5966_vw_like_cast_char AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +CREATE VIEW BABEL_5966_vw_like_ci_as AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_cs_as AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_ci_ai AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_cs_ai AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_ci_as_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_cs_as_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_ci_ai_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_cs_ai_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_nested AS +SELECT * FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%'; +GO + +CREATE VIEW BABEL_5966_vw_like_with_id AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS +WHERE Col LIKE N'prefix%' AND Id > 0; +GO + + +-- Stored Procedures +CREATE PROCEDURE BABEL_5966_sp_like_exact_const AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_prefix_const AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_suffix_const AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_varchar_param @pattern VARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_nvarchar_param @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_all_types @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_not_like_param @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_escape @pattern NVARCHAR(50), @esc CHAR(1) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern ESCAPE @esc; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_dynamic @prefix VARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @prefix + '%'; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_output @pattern NVARCHAR(50), @cnt INT OUTPUT AS +BEGIN + SELECT @cnt = COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_all_collations @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_nvar_collations @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_char_collations @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_with_cast @val VARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@val AS VARCHAR(50)); + SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@val AS NVARCHAR(50)); +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_multi_condition @p1 NVARCHAR(50), @p2 NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p1 AND Col LIKE @p2; + SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p1 OR Col LIKE @p2; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_subquery @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS + WHERE Id IN (SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern); +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_exists @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS t1 + WHERE EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 WHERE t2.Col LIKE @pattern AND t2.Id = t1.Id); +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_top @pattern NVARCHAR(50), @top INT AS +BEGIN + SELECT TOP(@top) Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern ORDER BY Col; +END; +GO + + +-- CHECK Constraints +CREATE TABLE BABEL_5966_TestLikeCheck_prefix ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(50) CHECK (Col LIKE 'valid%') +); +GO + +CREATE TABLE BABEL_5966_TestLikeCheck_nprefix ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(50) CHECK (Col LIKE N'valid%') +); +GO + +CREATE TABLE BABEL_5966_TestLikeCheck_not_like ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(50) CHECK (Col NOT LIKE 'bad%') +); +GO + +CREATE TABLE BABEL_5966_TestLikeCheck_escape ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(50) CHECK (Col LIKE '100!%%' ESCAPE '!') +); +GO + +CREATE TABLE BABEL_5966_TestLikeCheck_suffix ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(50) CHECK (Col LIKE '%_valid') +); +GO diff --git a/test/JDBC/expected/like_op_index_scan-before-15_2-vu-verify.out b/test/JDBC/expected/like_op_index_scan-before-15_2-vu-verify.out new file mode 100644 index 00000000000..cbaaf34e876 --- /dev/null +++ b/test/JDBC/expected/like_op_index_scan-before-15_2-vu-verify.out @@ -0,0 +1,11935 @@ +-- psql +ANALYZE master_dbo.babel_5966_testlikecollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikecollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikecollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikecollation_cs_ai; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_cs_ai; +ANALYZE master_dbo.babel_5966_testlikecharcollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikecharcollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikecharcollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikecharcollation_cs_ai; +GO + +-- tsql +SELECT set_config('enable_bitmapscan', 'off', false); +GO +~~START~~ +text +off +~~END~~ + + +exec sp_babelfish_configure 'explain_costs', 'off'; +GO + +SET babelfish_showplan_all ON; +GO + + +-- Plain literal (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 119.584 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.135 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.120 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.106 ms +~~END~~ + + + +-- Plain literal (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.104 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + + +-- Plain literal (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.106 ms +~~END~~ + + + +-- N-prefix literal (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.173 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%abc'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%abc' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%abc'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a'::"varchar") + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- N-prefix literal (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + + +-- N-prefix literal (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + + +-- N-prefix with no extractable prefix +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.101 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%else'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%else' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%else'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%else'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%else' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%else'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.085 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%a%b%c%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%a%b%c%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%a%b%c%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.085 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_xact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_xact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '_xact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.085 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_refix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_refix%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '_refix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.084 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'___' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.085 ms +~~END~~ + + + +-- CAST/CONVERT of constants (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 13.967 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.273 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.249 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.074 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.235 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + + +-- CONVERT (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.981 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.131 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'%match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'%match') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + + +-- CAST/CONVERT (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.130 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.131 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.133 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.107 ms +~~END~~ + + + +-- CAST/CONVERT (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.107 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.128 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + + +-- TRY_CAST (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 5.344 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + + +-- TRY_CAST (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + + +-- TRY_CAST (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + + +-- TRY_CAST nested +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(TRY_CAST(N'exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(TRY_CAST(N'exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.307 ms +~~END~~ + + + +-- TRY_CONVERT (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.147 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.128 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'%match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'%match') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + + +-- TRY_CONVERT (NVARCHAR/CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.148 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.150 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + + +-- TRY_CAST/TRY_CONVERT non-const (col ref) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(Col AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(Col AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_try_cast_to_varchar('character varying(50)'::text COLLATE "default", (col)::text))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.345 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), Col); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), Col) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", (col)::text, true, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.542 ms +~~END~~ + + + +-- TRY_CAST/TRY_CONVERT with parameter +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(@p AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST("@p" AS VARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.518 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), @p); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'prefix%' + Query Text: SELECT N'prefix%' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), "@p") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, true, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.647 ms +~~END~~ + + + +-- TRY_CAST with invalid conversion (returns NULL) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_try_cast_floor_int('not a number'::text COLLATE "default"))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 5.957 ms +~~END~~ + + + +-- ISNULL / COALESCE / NULLIF +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.185 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'prefix%', 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'prefix%', 'fallback') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.163 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.918 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, NULL, N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, NULL, N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(Col, 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(Col, 'fallback') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (COALESCE(col, 'fallback'::"varchar"))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.506 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(@p, 'fallback'); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL("@p", 'fallback') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'fallback'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.226 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = NULL; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(@p, N'prefix%'); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT NULL + Query Text: SELECT NULL + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE("@p", N'prefix%') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.175 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.819 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'prefix%', 'something else'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'prefix%', 'something else') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.119 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match') +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + + +-- Cross-datatype combinations (const patterns) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.107 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match '::bpchar) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.134 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + + +-- NOT LIKE variants (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar") OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.557 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar") OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'prefix'::"varchar") OR (col >= 'prefix?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar") OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- NOT LIKE (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col <> 'exact match'::nvarchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col <> 'exact match'::nvarchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: (((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'prefix'::nvarchar) OR (col >= 'prefix?'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col <> 'exact match'::nvarchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.121 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text !~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.106 ms +~~END~~ + + + +-- NOT LIKE (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.106 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: (((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'prefix'::bpchar) OR (col >= 'prefix?'::bpchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text !~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + + +-- Non-const patterns +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(Col AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(Col AS CHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((col)::bpchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.546 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(Col, '%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(Col, '%') +Finalize Aggregate + -> Gather + Workers Planned: 1 + -> Partial Aggregate + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (concat(VARIADIC ARRAY[col, '%'::"varchar"]))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.847 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE REPLACE(Col, '_', '%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE REPLACE(Col, '_', '%') +Finalize Aggregate + -> Gather + Workers Planned: 1 + -> Partial Aggregate + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (replace(col, '_'::"varchar", '%'::"varchar"))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.009 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE SUBSTRING(Col, 1, 3) + '%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE SUBSTRING(Col, 1, 3) + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(("substring"(col, 1, 3))::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 15.861 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LEFT(Col, 5) + '%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LEFT(Col, 5) + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(("left"(col, 5))::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.860 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (Col + '%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (Col + '%') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper((col)::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 9.434 ms +~~END~~ + + + +-- Non-const with CONVERT +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", (col)::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.119 ms +~~END~~ + + + +-- NULL handling +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.540 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.155 ms +~~END~~ + + + +-- Special characters and ESCAPE (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix___' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.195 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'!%something' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'!%something' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '?%something'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'abc!%%' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'abc!%%' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'abc?%%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'back\slash'::"varchar") + Filter: ((col)::text ~~* 'back\slash'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'single''quote'::"varchar") + Filter: ((col)::text ~~* 'single''quote'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'[a-z]%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '[a-z]%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + + +-- ESCAPE (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix___' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'back\slash' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'back\slash'::nvarchar) + Filter: ((col)::text ~~* 'back\slash'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'single''quote' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'single''quote'::nvarchar) + Filter: ((col)::text ~~* 'single''quote'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.107 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'[a-z]%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '[a-z]%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + + +-- ESCAPE (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix___' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'back\slash' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'back\slash'::bpchar) + Filter: ((col)::text ~~* 'back\slash'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'single''quote' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'single''quote'::bpchar) + Filter: ((col)::text ~~* 'single''quote'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'[a-z]%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '[a-z]%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- Unicode and accented characters +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'café'::"varchar") + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'caf'::"varchar") AND (col < 'caf?'::"varchar")) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'rés%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'rés'::"varchar") AND (col < 'rés?'::"varchar")) + Filter: ((col)::text ~~* 'rés%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'résumé'::nvarchar) + Filter: ((col)::text ~~* 'résumé'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'straße' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'straße'::nvarchar) + Filter: ((col)::text ~~* 'straße'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'caf'::nvarchar) AND (col < 'caf?'::nvarchar)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'rés'::nvarchar) AND (col < 'rés?'::nvarchar)) + Filter: ((col)::text ~~* 'rés%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'café'::bpchar) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'caf'::bpchar) AND (col < 'caf?'::bpchar)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'résumé' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'résumé'::bpchar) + Filter: ((col)::text ~~* 'résumé'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'straße' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'straße'::bpchar) + Filter: ((col)::text ~~* 'straße'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'rés%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'rés'::bpchar) AND (col < 'rés?'::bpchar)) + Filter: ((col)::text ~~* 'rés%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + + +-- Boundary cases (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = ''::"varchar") + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a'::"varchar") + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces ' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = ' spaces '::"varchar") + Filter: ((col)::text ~~* ' spaces '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= ' lead'::"varchar") AND (col < ' lead?'::"varchar")) + Filter: ((col)::text ~~* ' lead%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing ' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'trailing '::"varchar") + Filter: ((col)::text ~~* 'trailing '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'nonexistent'::"varchar") AND (col < 'nonexistent?'::"varchar")) + Filter: ((col)::text ~~* 'nonexistent_value_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'zzz%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'zzz'::"varchar") AND (col < 'zzz?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.107 ms +~~END~~ + + + +-- Boundary cases (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = ''::nvarchar) + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'a' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'a'::nvarchar) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.107 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'nonexistent'::nvarchar) AND (col < 'nonexistent?'::nvarchar)) + Filter: ((col)::text ~~* 'nonexistent_value_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'zzz%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: (((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'zzz'::nvarchar) AND (col < 'zzz?'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- Boundary cases (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = ''::bpchar) + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'a' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'a'::bpchar) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'_' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' spaces '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' spaces ' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = ' spaces '::bpchar) + Filter: ((col)::text ~~* ' spaces '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' lead%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' lead%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= ' lead'::bpchar) AND (col < ' lead?'::bpchar)) + Filter: ((col)::text ~~* ' lead%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'trailing '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'trailing ' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'trailing '::bpchar) + Filter: ((col)::text ~~* 'trailing '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'nonexistent'::bpchar) AND (col < 'nonexistent?'::bpchar)) + Filter: ((col)::text ~~* 'nonexistent_value_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'zzz%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: (((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'zzz'::bpchar) AND (col < 'zzz?'::bpchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- Variables and parameters +DECLARE @pattern VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT 'exact match' + Query Text: SELECT 'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.709 ms +~~END~~ + + +DECLARE @pattern NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT N'prefix%' + Query Text: SELECT N'prefix%' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.149 ms +~~END~~ + + +DECLARE @pattern VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@pattern AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT 'exact match' + Query Text: SELECT 'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@pattern" AS NVARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.164 ms +~~END~~ + + +DECLARE @pattern NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @pattern); +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), "@pattern") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.161 ms +~~END~~ + + +DECLARE @pattern VARCHAR(50) = 'test'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern + '%'; +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT 'test' + Query Text: SELECT 'test' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(NULL::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.177 ms +~~END~~ + + + +-- Expression patterns — Constant foldable +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.119 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'EXACT MATCH'::"varchar") + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 9.606 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.151 ms +~~END~~ + + + +-- Function on LHS — Blocks index +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE UPPER(Col) LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE UPPER(Col) LIKE N'EXACT MATCH' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: (((upper(col))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (upper(col) = 'EXACT MATCH'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.150 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LOWER(Col) LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LOWER(Col) LIKE N'prefix%' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: (((lower(col))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (lower(col) >= 'prefix'::"varchar") AND (lower(col) < 'prefix?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LEFT(Col, 10) LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LEFT(Col, 10) LIKE N'prefix%' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((("left"(col, 10))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ("left"(col, 10) >= 'prefix'::"varchar") AND ("left"(col, 10) < 'prefix?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.441 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE RTRIM(Col) LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE RTRIM(Col) LIKE N'exact match' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: (((rtrim(col))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (rtrim(col) = 'exact match'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.139 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE REPLACE(Col, ' ', '') LIKE N'exactmatch'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE REPLACE(Col, ' ', '') LIKE N'exactmatch' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: (((replace(col, ' '::"varchar", ''::"varchar"))::text ~~* 'exactmatch'::text COLLATE bbf_unicode_cp1_cs_as) AND (replace(col, ' '::"varchar", ''::"varchar") = 'exactmatch'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 1.934 ms +~~END~~ + + + +-- Case sensitivity +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'EXACT MATCH'::"varchar") + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'PREFIX'::"varchar") AND (col < 'PREFIX?'::"varchar")) + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.103 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'aAbBcCdDeE'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'aAbBcCdDeE' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'aAbBcCdDeE'::"varchar") + Filter: ((col)::text ~~* 'aAbBcCdDeE'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'EXACT MATCH'::nvarchar) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'PREFIX%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'PREFIX'::nvarchar) AND (col < 'PREFIX?'::nvarchar)) + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'EXACT MATCH'::bpchar) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'PREFIX%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'PREFIX'::bpchar) AND (col < 'PREFIX?'::bpchar)) + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- Covering index and scan variations +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.151 ms +~~END~~ + + +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.905 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT CASE WHEN EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%') THEN 1 ELSE 0 END; +GO +~~START~~ +text +Query Text: SELECT CASE WHEN EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%') THEN 1 ELSE 0 END +Result + InitPlan 1 + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.656 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'straße' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'straße'::"varchar") + Filter: ((col)::text ~~* 'straße'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + + +-- Multiple LIKE conditions +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) OR (((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'test'::"varchar") AND (col < 'test?'::"varchar"))) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.155 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* '%abc'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.169 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id > 5; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id > 5 +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (id > 5)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.540 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id BETWEEN 1 AND 10; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id BETWEEN 1 AND 10 +Aggregate + -> Index Scan using babel_5966_testlikecollation_ci_as_pkey on babel_5966_testlikecollation_ci_as + Index Cond: ((id >= 1) AND (id <= 10)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.181 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col IS NOT NULL; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col IS NOT NULL +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar") AND (col IS NOT NULL)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.155 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id IN (1, 2, 3, 4, 5); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id IN (1, 2, 3, 4, 5) +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (id = ANY ('{1,2,3,4,5}'::integer[]))) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.391 ms +~~END~~ + + + +-- LIKE in different query contexts +SELECT COUNT(*) +FROM BABEL_5966_TestLikeCollation_CI_AS t1 +JOIN BABEL_5966_TestLikeCollation_CI_AS t2 ON t1.Id = t2.Id +WHERE t1.Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) +FROM BABEL_5966_TestLikeCollation_CI_AS t1 +JOIN BABEL_5966_TestLikeCollation_CI_AS t2 ON t1.Id = t2.Id +WHERE t1.Col LIKE N'prefix%' +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as t2 + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 18.491 ms +~~END~~ + + +SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE N'pre%'; +GO +~~START~~ +text +Query Text: SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE N'pre%' +GroupAggregate + Group Key: ("left"(col, 3)) + -> Sort + Sort Key: ("left"(col, 3)) + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((("left"(col, 3))::text ~~* 'pre%'::text COLLATE bbf_unicode_cp1_cs_as) AND ("left"(col, 3) >= 'pre'::"varchar") AND ("left"(col, 3) < 'pre?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 35.678 ms +~~END~~ + + +SELECT COUNT(CASE WHEN Col LIKE N'prefix%' THEN 1 END) FROM BABEL_5966_TestLikeCollation_CI_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(CASE WHEN Col LIKE N'prefix%' THEN 1 END) FROM BABEL_5966_TestLikeCollation_CI_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 26.643 ms +~~END~~ + + +SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +Limit + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.573 ms +~~END~~ + + +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' ORDER BY Col; +GO +~~START~~ +text +Query Text: SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' ORDER BY Col +Sort + Sort Key: col NULLS FIRST + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 6.805 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id IN ( + SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id IN ( + SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +) +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 6.490 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS t1 +WHERE EXISTS ( + SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 + WHERE t2.Col LIKE N'prefix%' AND t2.Id = t1.Id +); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS t1 +WHERE EXISTS ( + SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 + WHERE t2.Col LIKE N'prefix%' AND t2.Id = t1.Id +) +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as t2 + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 15.600 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1) +Aggregate + InitPlan 1 + -> Limit + -> Index Scan using babel_5966_testlikecollation_ci_as_pkey on babel_5966_testlikecollation_ci_as babel_5966_testlikecollation_ci_as_1 + Index Cond: (id = 1) + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((InitPlan 1).col1)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 11.945 ms +~~END~~ + + + +-- CI_AS collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.104 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'EXACT MATCH'::"varchar") + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'resume'::"varchar") + Filter: ((col)::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'café'::"varchar") + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'caf'::"varchar") AND (col < 'caf?'::"varchar")) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.123 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar") OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.100 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- CS_AS collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'EXACT MATCH'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'resume'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'café'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'caf'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'caf?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) OR ((col)::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- CI_AI collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.104 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'résumé' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'res%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'res%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'res%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'res'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'res?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'naive'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'naive'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) OR ((remove_accents_internal((col)::text))::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- CS_AI collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'RESUME'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'RESUME'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'res%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'res%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'res%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'res'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'res?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) OR ((remove_accents_internal((col)::text))::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- Cross-collation via COLLATE clause +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 5.946 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.100 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CS_AI; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CS_AI +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.152 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE (N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AS); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE (N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AS) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.104 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CS_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AI +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + + +-- NVARCHAR columns with all collations +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_cs_asbabel_8042afedf3be7883adbc9452d1114ad8 on babel_5966_testlikenvarcollation_cs_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_cs_asbabel_8042afedf3be7883adbc9452d1114ad8 on babel_5966_testlikenvarcollation_cs_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- CHAR columns with all collations +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'EXACT MATCH'::bpchar) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'resume' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'resume'::bpchar) + Filter: ((col)::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'café'::bpchar) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'EXACT MATCH'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'resume' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'resume'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.139 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col <> 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) OR ((col)::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'résumé' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'cafe'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'cafe' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'naive'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'naive' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'naive'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'naive'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) OR ((remove_accents_internal((col)::text))::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'résumé' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'RESUME' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'RESUME'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'RESUME'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) OR ((remove_accents_internal((col)::text))::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + + +-- Cross-datatype with collations +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'café'::"varchar") + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'café'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'café' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'café' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'café'::nvarchar) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'café' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_cs_asbabel_8042afedf3be7883adbc9452d1114ad8 on babel_5966_testlikenvarcollation_cs_as + Index Cond: (col = 'café'::nvarchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'café' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'café' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'café'::bpchar) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'café' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'café' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'café'::bpchar) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'café' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'café' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + + +-- Safety tests for evaluate_expr +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", (col)::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.130 ms +~~END~~ + + +DECLARE @p VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @p); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT 'exact match' + Query Text: SELECT 'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), "@p") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.188 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @p); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'prefix%' + Query Text: SELECT N'prefix%' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), "@p") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.170 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@p AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@p" AS VARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.166 ms +~~END~~ + + +DECLARE @p VARCHAR(50) = 'test'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p + '%'; +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT 'test' + Query Text: SELECT 'test' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p" + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(NULL::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.156 ms +~~END~~ + + +-- Volatile functions +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), NEWID()); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), NEWID()) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", newid(), false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.550 ms +~~END~~ + + +-- Subquery pattern +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1) +Aggregate + InitPlan 1 + -> Limit + -> Index Scan using babel_5966_testlikecollation_ci_as_pkey on babel_5966_testlikecollation_ci_as babel_5966_testlikecollation_ci_as_1 + Index Cond: (id = 1) + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((InitPlan 1).col1)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.161 ms +~~END~~ + + +SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE 'pre%'; +GO +~~START~~ +text +Query Text: SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE 'pre%' +GroupAggregate + Group Key: ("left"(col, 3)) + -> Sort + Sort Key: ("left"(col, 3)) + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((("left"(col, 3))::text ~~* 'pre%'::text COLLATE bbf_unicode_cp1_cs_as) AND ("left"(col, 3) >= 'pre'::"varchar") AND ("left"(col, 3) < 'pre?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.202 ms +~~END~~ + + + +-- CHAR(N) / NCHAR(N) Pattern Tests +SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.174 ms +~~END~~ + + +SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.141 ms +~~END~~ + + +SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.190 ms +~~END~~ + + +SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.127 ms +~~END~~ + + +SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a '::"varchar") + Filter: ((col)::text ~~* 'a '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.132 ms +~~END~~ + + +SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a'::"varchar") + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a '::"varchar") + Filter: ((col)::text ~~* 'a '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.138 ms +~~END~~ + + +SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + +SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match '::"varchar") OR ((col)::text !~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.242 ms +~~END~~ + + +SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match '::nvarchar) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.139 ms +~~END~~ + + +SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match '::bpchar) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match '::bpchar) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.119 ms +~~END~~ + + +SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.123 ms +~~END~~ + + +SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'pre'::"varchar") AND (col < 'pre?'::"varchar")) + Filter: ((col)::text ~~* 'pre%abc '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.122 ms +~~END~~ + + +SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.132 ms +~~END~~ + + +SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match '::nvarchar) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + +SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.225 ms +~~END~~ + + +SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.179 ms +~~END~~ + + +SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.210 ms +~~END~~ + + +SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.125 ms +~~END~~ + + +SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + +SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match '::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match '::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + + +-- Views +SELECT COUNT(*) FROM BABEL_5966_vw_like_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_exact +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.076 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.070 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_suffix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_suffix +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.070 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_contains; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_contains +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_single_char; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_single_char +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_not_like; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_not_like +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text !~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'zzz'::"varchar") OR (col >= 'zzz?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_not_like_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_not_like_exact +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar") OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_exact +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_suffix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_suffix +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_char_exact +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_char_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_suffix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_char_suffix +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_or; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_or +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) OR (((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'test'::"varchar") AND (col < 'test?'::"varchar"))) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_and; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_and +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* '%abc'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_pct; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_pct +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.070 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_underscore; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_underscore +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'café'::"varchar") + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'caf'::"varchar") AND (col < 'caf?'::"varchar")) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_varchar; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_varchar +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_nvarchar; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_nvarchar +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_char; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_char +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.080 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai_prefix +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai_prefix +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nested; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nested +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar") AND (col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix_a%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_with_id; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_with_id +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (id > 0)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.077 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar") AND (col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix_a%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar) AND (col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix_a%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + + +-- Procedures +EXEC BABEL_5966_sp_like_exact_const; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_exact_const + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.927 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_prefix_const; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_prefix_const + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.269 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_suffix_const; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_suffix_const + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param '%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param '%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.053 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param NULL; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param NULL + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.085 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param ''; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param '' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'nonexistent_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.053 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%data%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'%data%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.053 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'café' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.060 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'caf%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'caf%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('caf%'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.053 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('EXACT MATCH'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('PREFIX%'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.052 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'prefix%' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.257 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'exact match' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'%match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'%match' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'café' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.060 ms +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'zzz%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_not_like_param N'zzz%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.121 ms +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_not_like_param N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_not_like_param N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'100!%done', '!'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_escape N'100!%done', '!' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ESCAPE "@esc" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.177 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'under!_score', '!'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_escape N'under!_score', '!' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ESCAPE "@esc" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.065 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'prefix'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'prefix' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('prefix'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.139 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'test'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'test' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('test'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'exact'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'exact' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('exact'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'zzz'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'zzz' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('zzz'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.060 ms +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT; +SELECT @result AS output_prefix; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT + Query Text: SELECT sys.pltsql_assign_var(1, cast((COUNT(*)) as int)) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT "@result" AS output_prefix +Result +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.153 ms +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT; +SELECT @result AS output_exact; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT + Query Text: SELECT sys.pltsql_assign_var(1, cast((COUNT(*)) as int)) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT "@result" AS output_exact +Result +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.150 ms +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT; +SELECT @result AS output_suffix; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT + Query Text: SELECT sys.pltsql_assign_var(1, cast((COUNT(*)) as int)) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT "@result" AS output_suffix +Result +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.140 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'exact match' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.279 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'prefix%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'PREFIX%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'PREFIX%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'café' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.060 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'resume'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'resume' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('resume'::nvarchar(50))::text) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ ('resume'::nvarchar(50))::text) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'exact match' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.282 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'prefix%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'resume'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'resume' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'exact match' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.280 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'prefix%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'café' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.062 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_with_cast 'exact match' + Query Text: SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS VARCHAR(50)) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS NVARCHAR(50)) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.296 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_with_cast 'prefix%' + Query Text: SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS VARCHAR(50)) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS NVARCHAR(50)) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.058 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%' + Query Text: SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" AND Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as)) + Query Text: SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" OR Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.364 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%' + Query Text: SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" AND Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as)) + Query Text: SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" OR Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR ((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.064 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match' + Query Text: SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" AND Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) + Query Text: SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" OR Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.063 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_subquery N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS + WHERE Id IN (SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern") + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.748 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_subquery N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS + WHERE Id IN (SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern") + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.059 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_exists N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS t1 + WHERE EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 WHERE t2.Col LIKE "@pattern" AND t2.Id = t1.Id) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as t2 + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.828 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_exists N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS t1 + WHERE EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 WHERE t2.Col LIKE "@pattern" AND t2.Id = t1.Id) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as t2 + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.058 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'prefix%', 3; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_top N'prefix%', 3 + Query Text: SELECT TOP("@top") Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ORDER BY Col + -> Limit + -> Sort + Sort Key: col NULLS FIRST + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 1.140 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'zzz%', 5; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_top N'zzz%', 5 + Query Text: SELECT TOP("@top") Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ORDER BY Col + -> Limit + -> Sort + Sort Key: col NULLS FIRST + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.064 ms +~~END~~ + + +-- Repeated execution +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +EXEC BABEL_5966_sp_like_varchar_param '%match'; +EXEC BABEL_5966_sp_like_varchar_param 'test%'; +EXEC BABEL_5966_sp_like_varchar_param 'a%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param '%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'test%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'a%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'a%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.207 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'test%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'a%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('exact match'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('prefix%'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('%match'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'test%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('test%'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'a%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('a%'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.154 ms +~~END~~ + + +SET babelfish_showplan_all OFF; +GO + + +-- Result correctness +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%data%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + + +-- Cross-type +SELECT COUNT(*) AS varchar_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS char_nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nvarchar_plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS varchar_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS varchar_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS nvarchar_varchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nvarchar_nvarchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS char_varchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS char_nvarchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS varchar_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS varchar_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS varchar_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS nvarchar_varchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nvarchar_nvarchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nvarchar_char FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS char_varchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS char_nvarchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS char_char FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- CAST/CONVERT patterns +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +SELECT COUNT(*) AS cast_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS convert_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match'); +SELECT COUNT(*) AS convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +SELECT COUNT(*) AS nested_cast FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +SELECT COUNT(*) AS triple_cast FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +SELECT COUNT(*) AS convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS try_cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS try_cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS try_convert_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match'); +SELECT COUNT(*) AS try_convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS try_cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +SELECT COUNT(*) AS try_convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +SELECT COUNT(*) AS try_cast FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +SELECT COUNT(*) AS tc_result FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), N'exact match'); +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +SELECT COUNT(*) AS try_cast FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +GO +~~START~~ +int +5 +~~END~~ + +SELECT COUNT(*) AS try_c FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + + +-- TRY_CAST returning NULL (invalid conversion) +SELECT COUNT(*) AS try_cast_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS isnull_first FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback'); +SELECT COUNT(*) AS isnull_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match'); +SELECT COUNT(*) AS coalesce_first FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback'); +SELECT COUNT(*) AS coalesce_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'exact match'); +SELECT COUNT(*) AS nullif_diff FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS isnull_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%'); +SELECT COUNT(*) AS coalesce_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +-- NULLIF returns NULL when args match +SELECT COUNT(*) AS nullif_same FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match'); +GO +~~START~~ +int +0 +~~END~~ + + +-- ISNULL with all NULLs +SELECT COUNT(*) AS isnull_both_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, NULL); +GO +~~START~~ +int +0 +~~END~~ + + + +-- Special characters +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '100!%done' ESCAPE '!'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'under!_score' ESCAPE '!'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'back\slash'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'single''quote'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + + +-- Unicode/accented +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'résumé'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'straße'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'naïve'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'naïve'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'caf%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'rés%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + + +-- Case sensitivity +SELECT COUNT(*) AS lower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nlower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nupper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS lower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'PREFIX%'; +SELECT COUNT(*) AS nlower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS nupper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + + +-- NULL handling +SELECT COUNT(*) AS like_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL; +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS not_like_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL; +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS cast_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)); +GO +~~START~~ +int +0 +~~END~~ + + + +-- Boundary cases +SELECT COUNT(*) AS empty_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ''; +SELECT COUNT(*) AS empty_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS single_a_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'a'; +SELECT COUNT(*) AS single_a_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS underscore_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '_'; +SELECT COUNT(*) AS underscore_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS pct_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%'; +SELECT COUNT(*) AS pct_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO +~~START~~ +int +20048 +~~END~~ + +~~START~~ +int +20048 +~~END~~ + + +SELECT COUNT(*) AS spaces_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ' spaces '; +SELECT COUNT(*) AS spaces_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces '; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS trailing_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'trailing '; +SELECT COUNT(*) AS trailing_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing '; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS leading_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ' lead%'; +SELECT COUNT(*) AS leading_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS nonexist_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'nonexistent_value_xyz'; +SELECT COUNT(*) AS nonexist_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +0 +~~END~~ + + + +-- Collation CI_AS +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Collation CS_AS +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + + +-- Collation CI_AI +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +6 +~~END~~ + +~~START~~ +int +6 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'cafe'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'naive'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive'; +GO +~~START~~ +int +6 +~~END~~ + +~~START~~ +int +6 +~~END~~ + + + +-- Collation CS_AI +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'résumé'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'RESUME'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + + +-- NOT LIKE with collations +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20047 +~~END~~ + +~~START~~ +int +20047 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20047 +~~END~~ + +~~START~~ +int +20047 +~~END~~ + + + +-- Variables +DECLARE @v VARCHAR(50) = 'exact match'; +DECLARE @n NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +DECLARE @v VARCHAR(50) = 'prefix%'; +DECLARE @n NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +DECLARE @v VARCHAR(50) = '%match'; +DECLARE @n NVARCHAR(50) = N'%match'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Expression patterns +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS concat_n FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match'; +SELECT COUNT(*) AS fn_concat FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS upper_fn FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS lower_fn FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Multiple conditions +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' AND Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' OR Col LIKE 'test%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%'; +GO +~~START~~ +int +8 +~~END~~ + +~~START~~ +int +8 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' AND Col LIKE '%abc'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- NVARCHAR column +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +4 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20036 +~~END~~ + +~~START~~ +int +20036 +~~END~~ + + + +-- CHAR column +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20043 +~~END~~ + +~~START~~ +int +20043 +~~END~~ + + + +-- NVARCHAR collation tables +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +4 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + + +-- CHAR collation tables +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Cross-collation COLLATE clause +SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS ci_as_cs_collate FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cs_as_ci_collate FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS ci_as_ai_collate FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +6 +~~END~~ + + + +-- CHAR(N) / NCHAR(N) Pattern Tests +-- CHAR pattern exact match — should NOT match (trailing spaces) +SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern same length — should match (no padding) +SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +GO +~~START~~ +int +3 +~~END~~ + + +-- Compare: CHAR(11) should match, CHAR(20) should NOT +SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with wildcard at end — should still work +SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with large padding +SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR(1) pattern +SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)); +GO +~~START~~ +int +2 +~~END~~ + + +-- CHAR(10) with single char — padded with 9 spaces +SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR(1) with wildcard +SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)); +GO +~~START~~ +int +20048 +~~END~~ + + +-- CHAR(10) with wildcard — becomes '% ' +SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)); +GO +~~START~~ +int +0 +~~END~~ + + +-- NOT LIKE with CHAR pattern +SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +20048 +~~END~~ + + +-- NVARCHAR column with CHAR pattern +SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR column with CHAR pattern (same length as column) +SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + + +-- CHAR column with CHAR pattern (different length) +SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +3 +~~END~~ + + +-- CHAR pattern with leading wildcard +SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with middle wildcard +SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- NCHAR patterns +SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with CONVERT +SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match'); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%'); +GO +~~START~~ +int +0 +~~END~~ + + +-- Nested CHAR casts +SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern across collations +SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + + +-- Views +SELECT COUNT(*) AS vw_exact_varchar FROM BABEL_5966_vw_like_exact; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_varchar FROM BABEL_5966_vw_like_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_suffix_varchar FROM BABEL_5966_vw_like_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_contains_varchar FROM BABEL_5966_vw_like_contains; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_single_char_varchar FROM BABEL_5966_vw_like_single_char; +GO +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS vw_not_like FROM BABEL_5966_vw_not_like; +GO +~~START~~ +int +48 +~~END~~ + + +SELECT COUNT(*) AS vw_not_like_exact FROM BABEL_5966_vw_not_like_exact; +GO +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS vw_exact_nvarchar FROM BABEL_5966_vw_like_nvar_exact; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_nvarchar FROM BABEL_5966_vw_like_nvar_prefix; +GO +~~START~~ +int +4 +~~END~~ + + +SELECT COUNT(*) AS vw_suffix_nvarchar FROM BABEL_5966_vw_like_nvar_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_exact_char FROM BABEL_5966_vw_like_char_exact; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_char FROM BABEL_5966_vw_like_char_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_suffix_char FROM BABEL_5966_vw_like_char_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_or FROM BABEL_5966_vw_like_or; +GO +~~START~~ +int +8 +~~END~~ + + +SELECT COUNT(*) AS vw_and FROM BABEL_5966_vw_like_and; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_mixed FROM BABEL_5966_vw_like_and; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_escape_pct FROM BABEL_5966_vw_like_escape_pct; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_escape_underscore FROM BABEL_5966_vw_like_escape_underscore; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_unicode FROM BABEL_5966_vw_like_unicode; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_unicode_prefix FROM BABEL_5966_vw_like_unicode_prefix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cast_varchar FROM BABEL_5966_vw_like_cast_varchar; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cast_nvarchar FROM BABEL_5966_vw_like_cast_nvarchar; +GO +~~START~~ +int +5 +~~END~~ + + +-- CHAR(20) pattern: should return 0 (trailing spaces, no match) +SELECT COUNT(*) AS vw_cast_char FROM BABEL_5966_vw_like_cast_char; +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_as FROM BABEL_5966_vw_like_ci_as; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_as FROM BABEL_5966_vw_like_cs_as; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_ai FROM BABEL_5966_vw_like_ci_ai; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_ai FROM BABEL_5966_vw_like_cs_ai; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_as_prefix FROM BABEL_5966_vw_like_ci_as_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_as_prefix FROM BABEL_5966_vw_like_cs_as_prefix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_ai_prefix FROM BABEL_5966_vw_like_ci_ai_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_ai_prefix FROM BABEL_5966_vw_like_cs_ai_prefix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_nested FROM BABEL_5966_vw_like_nested; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_with_id FROM BABEL_5966_vw_like_with_id; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_filter FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_nvar_filter FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS vw_join FROM BABEL_5966_vw_like_prefix v +JOIN BABEL_5966_vw_like_nvar_prefix n ON v.Id = n.Id; +GO +~~START~~ +int +4 +~~END~~ + + + +-- Procedures +EXEC BABEL_5966_sp_like_exact_const; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_prefix_const; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_suffix_const; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%'; +GO +~~START~~ +int +20048 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param NULL; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param ''; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz'; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%data%'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'café'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'caf%'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'zzz%'; +GO +~~START~~ +int +48 +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'prefix%'; +GO +~~START~~ +int +20043 +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'100!%done', '!'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'under!_score', '!'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'prefix'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'test'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'exact'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'zzz'; +GO +~~START~~ +int +20000 +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT; +SELECT @result AS output_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT; +SELECT @result AS output_exact; +GO +~~START~~ +int +3 +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT; +SELECT @result AS output_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'PREFIX%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'resume'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +6 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'prefix%'; +GO +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'resume'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%'; +GO +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +8 +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'prefix%', 3; +GO +~~START~~ +varchar +prefix_abc +PREFIX_ABC +Prefix_Abc +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'zzz%', 5; +GO +~~START~~ +varchar +zzz_filler_1 +zzz_filler_10 +zzz_filler_100 +zzz_filler_1000 +zzz_filler_10000 +~~END~~ + + +-- Repeated execution +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +EXEC BABEL_5966_sp_like_varchar_param '%match'; +EXEC BABEL_5966_sp_like_varchar_param 'test%'; +EXEC BABEL_5966_sp_like_varchar_param 'a%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +9 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'test%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'a%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +9 +~~END~~ + + + +-- sp_executesql +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'%match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'prefix%'; +GO +~~START~~ +int +4 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = NULL; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'EXACT MATCH'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'resume'; +GO +~~START~~ +int +6 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'resume'; +GO +~~START~~ +int +2 +~~END~~ + + + + +-- CHECK Constraints +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('valid_data'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('valid'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('invalid_data'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_prefix" violates check constraint "babel_5966_testlikecheck_prefix_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_nprefix (Col) VALUES ('valid_data'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_nprefix (Col) VALUES ('invalid_data'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_nprefix" violates check constraint "babel_5966_testlikecheck_nprefix_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('good_data'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('ok_data'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('bad_data'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_not_like" violates check constraint "babel_5966_testlikecheck_not_like_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('100%done'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('100%almost'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('200%done'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_escape" violates check constraint "babel_5966_testlikecheck_escape_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('is_valid'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('also_valid'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('invalid'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_prefix; +GO +~~START~~ +int#!#varchar +1#!#valid_data +2#!#valid +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_nprefix; +GO +~~START~~ +int#!#varchar +1#!#valid_data +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_not_like; +GO +~~START~~ +int#!#varchar +1#!#good_data +2#!#ok_data +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_escape; +GO +~~START~~ +int#!#varchar +1#!#100%done +2#!#100%almost +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_suffix; +GO +~~START~~ +int#!#varchar +1#!#is_valid +2#!#also_valid +3#!#invalid +~~END~~ + + + +-- UPDATE / DELETE +UPDATE BABEL_5966_TestLikeCollation_CI_AS SET Col = Col WHERE Col LIKE N'prefix%'; +SELECT @@ROWCOUNT AS update_prefix; +GO +~~ROW COUNT: 5~~ + +~~START~~ +int +5 +~~END~~ + + +UPDATE BABEL_5966_TestLikeCollation_CI_AS SET Col = Col WHERE Col NOT LIKE N'zzz%'; +SELECT @@ROWCOUNT AS update_not_zzz; +GO +~~ROW COUNT: 48~~ + +~~START~~ +int +48 +~~END~~ + + +DELETE FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_xyz_abc%'; +SELECT @@ROWCOUNT AS delete_none; +GO +~~START~~ +int +0 +~~END~~ + + +exec sp_babelfish_configure 'explain_costs', 'off'; +GO + +SELECT set_config('enable_bitmapscan', 'on', false); +GO +~~START~~ +text +on +~~END~~ + diff --git a/test/JDBC/expected/like_op_index_scan-vu-cleanup.out b/test/JDBC/expected/like_op_index_scan-vu-cleanup.out new file mode 100644 index 00000000000..43cac8bf45a --- /dev/null +++ b/test/JDBC/expected/like_op_index_scan-vu-cleanup.out @@ -0,0 +1,85 @@ +DROP VIEW BABEL_5966_vw_like_nested; +DROP VIEW BABEL_5966_vw_like_exact; +DROP VIEW BABEL_5966_vw_like_prefix; +DROP VIEW BABEL_5966_vw_like_suffix; +DROP VIEW BABEL_5966_vw_like_contains; +DROP VIEW BABEL_5966_vw_like_single_char; +DROP VIEW BABEL_5966_vw_not_like; +DROP VIEW BABEL_5966_vw_not_like_exact; +DROP VIEW BABEL_5966_vw_like_nvar_exact; +DROP VIEW BABEL_5966_vw_like_nvar_prefix; +DROP VIEW BABEL_5966_vw_like_nvar_suffix; +DROP VIEW BABEL_5966_vw_like_char_exact; +DROP VIEW BABEL_5966_vw_like_char_prefix; +DROP VIEW BABEL_5966_vw_like_char_suffix; +DROP VIEW BABEL_5966_vw_like_or; +DROP VIEW BABEL_5966_vw_like_and; +DROP VIEW BABEL_5966_vw_like_escape_pct; +DROP VIEW BABEL_5966_vw_like_escape_underscore; +DROP VIEW BABEL_5966_vw_like_unicode; +DROP VIEW BABEL_5966_vw_like_unicode_prefix; +DROP VIEW BABEL_5966_vw_like_cast_varchar; +DROP VIEW BABEL_5966_vw_like_cast_nvarchar; +DROP VIEW BABEL_5966_vw_like_cast_char; +DROP VIEW BABEL_5966_vw_like_ci_as; +DROP VIEW BABEL_5966_vw_like_cs_as; +DROP VIEW BABEL_5966_vw_like_ci_ai; +DROP VIEW BABEL_5966_vw_like_cs_ai; +DROP VIEW BABEL_5966_vw_like_ci_as_prefix; +DROP VIEW BABEL_5966_vw_like_cs_as_prefix; +DROP VIEW BABEL_5966_vw_like_ci_ai_prefix; +DROP VIEW BABEL_5966_vw_like_cs_ai_prefix; +DROP VIEW BABEL_5966_vw_like_with_id; +GO + +DROP PROCEDURE BABEL_5966_sp_like_exact_const; +DROP PROCEDURE BABEL_5966_sp_like_prefix_const; +DROP PROCEDURE BABEL_5966_sp_like_suffix_const; +DROP PROCEDURE BABEL_5966_sp_like_varchar_param; +DROP PROCEDURE BABEL_5966_sp_like_nvarchar_param; +DROP PROCEDURE BABEL_5966_sp_like_all_types; +DROP PROCEDURE BABEL_5966_sp_not_like_param; +DROP PROCEDURE BABEL_5966_sp_like_escape; +DROP PROCEDURE BABEL_5966_sp_like_dynamic; +DROP PROCEDURE BABEL_5966_sp_like_output; +DROP PROCEDURE BABEL_5966_sp_like_all_collations; +DROP PROCEDURE BABEL_5966_sp_like_nvar_collations; +DROP PROCEDURE BABEL_5966_sp_like_char_collations; +DROP PROCEDURE BABEL_5966_sp_like_with_cast; +DROP PROCEDURE BABEL_5966_sp_like_multi_condition; +DROP PROCEDURE BABEL_5966_sp_like_subquery; +DROP PROCEDURE BABEL_5966_sp_like_exists; +DROP PROCEDURE BABEL_5966_sp_like_top; +GO + +DROP TABLE BABEL_5966_TestLikeCollation_CI_AS; +GO +DROP TABLE BABEL_5966_TestLikeCollation_CS_AS; +GO +DROP TABLE BABEL_5966_TestLikeCollation_CI_AI; +GO +DROP TABLE BABEL_5966_TestLikeCollation_CS_AI; +GO +DROP TABLE BABEL_5966_TestLikeNVarCollation_CI_AS; +GO +DROP TABLE BABEL_5966_TestLikeNVarCollation_CS_AS; +GO +DROP TABLE BABEL_5966_TestLikeNVarCollation_CI_AI; +GO +DROP TABLE BABEL_5966_TestLikeNVarCollation_CS_AI; +GO +DROP TABLE BABEL_5966_TestLikeCharCollation_CI_AS; +GO +DROP TABLE BABEL_5966_TestLikeCharCollation_CS_AS; +GO +DROP TABLE BABEL_5966_TestLikeCharCollation_CI_AI; +GO +DROP TABLE BABEL_5966_TestLikeCharCollation_CS_AI; +GO + +DROP TABLE BABEL_5966_TestLikeCheck_prefix; +DROP TABLE BABEL_5966_TestLikeCheck_nprefix; +DROP TABLE BABEL_5966_TestLikeCheck_not_like; +DROP TABLE BABEL_5966_TestLikeCheck_escape; +DROP TABLE BABEL_5966_TestLikeCheck_suffix; +GO diff --git a/test/JDBC/expected/like_op_index_scan-vu-prepare.out b/test/JDBC/expected/like_op_index_scan-vu-prepare.out new file mode 100644 index 00000000000..45800b49a4b --- /dev/null +++ b/test/JDBC/expected/like_op_index_scan-vu-prepare.out @@ -0,0 +1,496 @@ +CREATE TABLE BABEL_5966_TestLikeCollation_CI_AS ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeCollation_CS_AS ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeCollation_CI_AI ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AI +); +GO + +CREATE TABLE BABEL_5966_TestLikeCollation_CS_AI ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AI +); +GO + +CREATE INDEX BABEL_5966_idx_ci_as ON BABEL_5966_TestLikeCollation_CI_AS(Col); +CREATE INDEX BABEL_5966_idx_cs_as ON BABEL_5966_TestLikeCollation_CS_AS(Col); +GO + +INSERT INTO BABEL_5966_TestLikeCollation_CI_AS (Col) +VALUES ('exact match'), ('EXACT MATCH'), ('Exact Match'), + ('prefix_abc'), ('PREFIX_ABC'), ('Prefix_Abc'), + ('prefix_def'), ('prefix_ghi'), + ('something else'), ('another value'), + ('test data 1'), ('test data 2'), ('test data 3'), + ('UPPER CASE'), ('mixed Case'), + ('café'), ('CAFÉ'), ('Café'), + ('résumé'), ('RÉSUMÉ'), ('Résumé'), + ('naïve'), ('NAÏVE'), ('Naïve'), + ('resume'), ('RESUME'), ('Resume'), + ('naive'), ('NAIVE'), ('Naive'), + ('straße'), ('STRASSE'), ('Straße'), + ('a'), ('A'), ('ab'), ('abc'), ('ABC'), + ('100%done'), ('under_score'), + ('back\slash'), ('single''quote'), + (' spaces '), ('trailing '), (' leading'), + ('aaaaaaaaaa'), ('AAAAAAAAAA'), ('aAbBcCdDeE'); +GO +~~ROW COUNT: 48~~ + + +INSERT INTO BABEL_5966_TestLikeCollation_CI_AS (Col) +SELECT 'zzz_filler_' + CAST(n AS VARCHAR(10)) +FROM generate_series(1, 20000) AS n; +GO +~~ROW COUNT: 20000~~ + + +INSERT INTO BABEL_5966_TestLikeCollation_CS_AS (Col) +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS; +GO +~~ROW COUNT: 20048~~ + + +INSERT INTO BABEL_5966_TestLikeCollation_CI_AI (Col) +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS; +GO +~~ROW COUNT: 20048~~ + + +INSERT INTO BABEL_5966_TestLikeCollation_CS_AI (Col) +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS; +GO +~~ROW COUNT: 20048~~ + + +CREATE TABLE BABEL_5966_TestLikeNVarCollation_CI_AS ( + Id INT IDENTITY PRIMARY KEY, + Col NVARCHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeNVarCollation_CS_AS ( + Id INT IDENTITY PRIMARY KEY, + Col NVARCHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeNVarCollation_CI_AI ( + Id INT IDENTITY PRIMARY KEY, + Col NVARCHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AI +); +GO + +CREATE TABLE BABEL_5966_TestLikeNVarCollation_CS_AI ( + Id INT IDENTITY PRIMARY KEY, + Col NVARCHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AI +); +GO + +CREATE INDEX BABEL_5966_idx_nvar_ci_as ON BABEL_5966_TestLikeNVarCollation_CI_AS(Col); +CREATE INDEX BABEL_5966_idx_nvar_cs_as ON BABEL_5966_TestLikeNVarCollation_CS_AS(Col); +GO + +INSERT INTO BABEL_5966_TestLikeNVarCollation_CI_AS (Col) +VALUES (N'exact match'), (N'EXACT MATCH'), (N'Exact Match'), + (N'prefix_abc'), (N'PREFIX_ABC'), + (N'prefix_def'), (N'prefix_ghi'), + (N'something else'), (N'another value'), + (N'test data 1'), (N'test data 2'), (N'test data 3'), + (N'café'), (N'CAFÉ'), + (N'résumé'), (N'RÉSUMÉ'), (N'resume'), (N'RESUME'), + (N'naïve'), (N'NAÏVE'), (N'naive'), (N'NAIVE'), + (N'straße'), (N'STRASSE'), + (N'a'), (N'A'), (N'ab'), (N'abc'), (N'ABC'), + (N'100%done'), (N'under_score'), + (N'back\slash'), (N'single''quote'), + (N' spaces '), (N'trailing '), (N' leading'), + (N'aaaaaaaaaa'), (N'AAAAAAAAAA'), (N'aAbBcCdDeE'); +GO +~~ROW COUNT: 39~~ + + +INSERT INTO BABEL_5966_TestLikeNVarCollation_CI_AS (Col) +SELECT N'zzz_filler_' + CAST(n AS NVARCHAR(10)) +FROM generate_series(1, 20000) AS n; +GO +~~ROW COUNT: 20000~~ + + +INSERT INTO BABEL_5966_TestLikeNVarCollation_CS_AS (Col) SELECT Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS; +INSERT INTO BABEL_5966_TestLikeNVarCollation_CI_AI (Col) SELECT Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS; +INSERT INTO BABEL_5966_TestLikeNVarCollation_CS_AI (Col) SELECT Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS; +GO +~~ROW COUNT: 20039~~ + +~~ROW COUNT: 20039~~ + +~~ROW COUNT: 20039~~ + + +CREATE TABLE BABEL_5966_TestLikeCharCollation_CI_AS ( + Id INT IDENTITY PRIMARY KEY, + Col CHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeCharCollation_CS_AS ( + Id INT IDENTITY PRIMARY KEY, + Col CHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeCharCollation_CI_AI ( + Id INT IDENTITY PRIMARY KEY, + Col CHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AI +); +GO + +CREATE TABLE BABEL_5966_TestLikeCharCollation_CS_AI ( + Id INT IDENTITY PRIMARY KEY, + Col CHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AI +); +GO + +CREATE INDEX BABEL_5966_idx_char_ci_as ON BABEL_5966_TestLikeCharCollation_CI_AS(Col); +CREATE INDEX BABEL_5966_idx_char_cs_as ON BABEL_5966_TestLikeCharCollation_CS_AS(Col); +GO + +INSERT INTO BABEL_5966_TestLikeCharCollation_CI_AS (Col) +VALUES ('exact match'), ('EXACT MATCH'), ('Exact Match'), + ('prefix_abc'), ('PREFIX_ABC'), ('Prefix_Abc'), + ('prefix_def'), ('prefix_ghi'), + ('something else'), ('another value'), + ('test data 1'), ('test data 2'), ('test data 3'), + ('café'), ('CAFÉ'), ('Café'), + ('résumé'), ('RÉSUMÉ'), ('Résumé'), + ('naïve'), ('NAÏVE'), ('Naïve'), + ('resume'), ('RESUME'), ('Resume'), + ('naive'), ('NAIVE'), ('Naive'), + ('straße'), ('STRASSE'), ('Straße'), + ('a'), ('A'), ('ab'), ('abc'), ('ABC'), + ('100%done'), ('under_score'), + ('back\slash'), ('single''quote'), + (' spaces '), ('trailing '), (' leading'), + ('aaaaaaaaaa'), ('AAAAAAAAAA'), ('aAbBcCdDeE'); +GO +~~ROW COUNT: 46~~ + + +INSERT INTO BABEL_5966_TestLikeCharCollation_CI_AS (Col) +SELECT 'zzz_filler_' + CAST(n AS VARCHAR(10)) +FROM generate_series(1, 20000) AS n; +GO +~~ROW COUNT: 20000~~ + + +INSERT INTO BABEL_5966_TestLikeCharCollation_CS_AS (Col) SELECT Col FROM BABEL_5966_TestLikeCharCollation_CI_AS; +INSERT INTO BABEL_5966_TestLikeCharCollation_CI_AI (Col) SELECT Col FROM BABEL_5966_TestLikeCharCollation_CI_AS; +INSERT INTO BABEL_5966_TestLikeCharCollation_CS_AI (Col) SELECT Col FROM BABEL_5966_TestLikeCharCollation_CI_AS; +GO +~~ROW COUNT: 20046~~ + +~~ROW COUNT: 20046~~ + +~~ROW COUNT: 20046~~ + + + +-- Views (using CI_AS explicit collation tables) +CREATE VIEW BABEL_5966_vw_like_exact AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_suffix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +CREATE VIEW BABEL_5966_vw_like_contains AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO + +CREATE VIEW BABEL_5966_vw_like_single_char AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_'; +GO + +CREATE VIEW BABEL_5966_vw_not_like AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'zzz%'; +GO + +CREATE VIEW BABEL_5966_vw_not_like_exact AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_nvar_exact AS +SELECT Id, Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_nvar_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_nvar_suffix AS +SELECT Id, Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +CREATE VIEW BABEL_5966_vw_like_char_exact AS +SELECT Id, Col FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_char_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_char_suffix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +CREATE VIEW BABEL_5966_vw_like_or AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS +WHERE Col LIKE N'prefix%' OR Col LIKE N'test%'; +GO + +CREATE VIEW BABEL_5966_vw_like_and AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS +WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc'; +GO + +CREATE VIEW BABEL_5966_vw_like_escape_pct AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO + +CREATE VIEW BABEL_5966_vw_like_escape_underscore AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO + +CREATE VIEW BABEL_5966_vw_like_unicode AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO + +CREATE VIEW BABEL_5966_vw_like_unicode_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO + +CREATE VIEW BABEL_5966_vw_like_cast_varchar AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +CREATE VIEW BABEL_5966_vw_like_cast_nvarchar AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +GO + +CREATE VIEW BABEL_5966_vw_like_cast_char AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +CREATE VIEW BABEL_5966_vw_like_ci_as AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_cs_as AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_ci_ai AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_cs_ai AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_ci_as_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_cs_as_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_ci_ai_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_cs_ai_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_nested AS +SELECT * FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%'; +GO + +CREATE VIEW BABEL_5966_vw_like_with_id AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS +WHERE Col LIKE N'prefix%' AND Id > 0; +GO + + +-- Stored Procedures +CREATE PROCEDURE BABEL_5966_sp_like_exact_const AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_prefix_const AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_suffix_const AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_varchar_param @pattern VARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_nvarchar_param @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_all_types @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_not_like_param @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_escape @pattern NVARCHAR(50), @esc CHAR(1) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern ESCAPE @esc; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_dynamic @prefix VARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @prefix + '%'; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_output @pattern NVARCHAR(50), @cnt INT OUTPUT AS +BEGIN + SELECT @cnt = COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_all_collations @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_nvar_collations @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_char_collations @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_with_cast @val VARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@val AS VARCHAR(50)); + SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@val AS NVARCHAR(50)); +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_multi_condition @p1 NVARCHAR(50), @p2 NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p1 AND Col LIKE @p2; + SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p1 OR Col LIKE @p2; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_subquery @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS + WHERE Id IN (SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern); +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_exists @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS t1 + WHERE EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 WHERE t2.Col LIKE @pattern AND t2.Id = t1.Id); +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_top @pattern NVARCHAR(50), @top INT AS +BEGIN + SELECT TOP(@top) Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern ORDER BY Col; +END; +GO + + +-- CHECK Constraints +CREATE TABLE BABEL_5966_TestLikeCheck_prefix ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(50) CHECK (Col LIKE 'valid%') +); +GO + +CREATE TABLE BABEL_5966_TestLikeCheck_nprefix ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(50) CHECK (Col LIKE N'valid%') +); +GO + +CREATE TABLE BABEL_5966_TestLikeCheck_not_like ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(50) CHECK (Col NOT LIKE 'bad%') +); +GO + +CREATE TABLE BABEL_5966_TestLikeCheck_escape ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(50) CHECK (Col LIKE '100!%%' ESCAPE '!') +); +GO + +CREATE TABLE BABEL_5966_TestLikeCheck_suffix ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(50) CHECK (Col LIKE '%_valid') +); +GO diff --git a/test/JDBC/expected/like_op_index_scan-vu-verify.out b/test/JDBC/expected/like_op_index_scan-vu-verify.out new file mode 100644 index 00000000000..9412257a14b --- /dev/null +++ b/test/JDBC/expected/like_op_index_scan-vu-verify.out @@ -0,0 +1,11931 @@ +-- psql +ANALYZE master_dbo.babel_5966_testlikecollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikecollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikecollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikecollation_cs_ai; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_cs_ai; +ANALYZE master_dbo.babel_5966_testlikecharcollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikecharcollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikecharcollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikecharcollation_cs_ai; +GO + +-- tsql +SELECT set_config('enable_bitmapscan', 'off', false); +GO +~~START~~ +text +off +~~END~~ + + +exec sp_babelfish_configure 'explain_costs', 'off'; +GO + +SET babelfish_showplan_all ON; +GO + + +-- Plain literal (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 119.584 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.135 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.120 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.106 ms +~~END~~ + + + +-- Plain literal (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.104 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + + +-- Plain literal (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.106 ms +~~END~~ + + + +-- N-prefix literal (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.173 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%abc'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%abc' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%abc'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a'::"varchar") + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- N-prefix literal (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + + +-- N-prefix literal (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + + +-- N-prefix with no extractable prefix +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.101 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%else'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%else' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%else'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%else'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%else' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%else'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.085 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%a%b%c%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%a%b%c%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%a%b%c%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.085 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_xact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_xact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '_xact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.085 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_refix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_refix%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '_refix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.084 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'___' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.085 ms +~~END~~ + + + +-- CAST/CONVERT of constants (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 13.967 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.273 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.249 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.074 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.235 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + + +-- CONVERT (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.981 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.131 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'%match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'%match') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + + +-- CAST/CONVERT (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.130 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.131 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.133 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.107 ms +~~END~~ + + + +-- CAST/CONVERT (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.107 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.128 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + + +-- TRY_CAST (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 5.344 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + + +-- TRY_CAST (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + + +-- TRY_CAST (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + + +-- TRY_CAST nested +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(TRY_CAST(N'exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(TRY_CAST(N'exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.307 ms +~~END~~ + + + +-- TRY_CONVERT (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.147 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.128 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'%match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'%match') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + + +-- TRY_CONVERT (NVARCHAR/CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.148 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.150 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + + +-- TRY_CAST/TRY_CONVERT non-const (col ref) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(Col AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(Col AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_try_cast_to_varchar('character varying(50)'::text COLLATE "default", (col)::text))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.345 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), Col); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), Col) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", (col)::text, true, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.542 ms +~~END~~ + + + +-- TRY_CAST/TRY_CONVERT with parameter +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(@p AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST("@p" AS VARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.518 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), @p); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'prefix%' + Query Text: SELECT N'prefix%' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), "@p") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, true, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.647 ms +~~END~~ + + + +-- TRY_CAST with invalid conversion (returns NULL) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_try_cast_floor_int('not a number'::text COLLATE "default"))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 5.957 ms +~~END~~ + + + +-- ISNULL / COALESCE / NULLIF +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.185 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'prefix%', 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'prefix%', 'fallback') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.163 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.918 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, NULL, N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, NULL, N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(Col, 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(Col, 'fallback') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (COALESCE(col, 'fallback'::"varchar"))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.506 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(@p, 'fallback'); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL("@p", 'fallback') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'fallback'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.226 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = NULL; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(@p, N'prefix%'); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT NULL + Query Text: SELECT NULL + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE("@p", N'prefix%') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.175 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.819 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'prefix%', 'something else'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'prefix%', 'something else') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.119 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match') +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + + +-- Cross-datatype combinations (const patterns) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.107 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match '::bpchar) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.134 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + + +-- NOT LIKE variants (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar") OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.557 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar") OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'prefix'::"varchar") OR (col >= 'prefix?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar") OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- NOT LIKE (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col <> 'exact match'::nvarchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col <> 'exact match'::nvarchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: (((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'prefix'::nvarchar) OR (col >= 'prefix?'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col <> 'exact match'::nvarchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.121 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text !~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.106 ms +~~END~~ + + + +-- NOT LIKE (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.106 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: (((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'prefix'::bpchar) OR (col >= 'prefix?'::bpchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text !~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + + +-- Non-const patterns +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(Col AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(Col AS CHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((col)::bpchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.546 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(Col, '%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(Col, '%') +Finalize Aggregate + -> Gather + Workers Planned: 1 + -> Partial Aggregate + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (concat(VARIADIC ARRAY[col, '%'::"varchar"]))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.847 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE REPLACE(Col, '_', '%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE REPLACE(Col, '_', '%') +Finalize Aggregate + -> Gather + Workers Planned: 1 + -> Partial Aggregate + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (replace(col, '_'::"varchar", '%'::"varchar"))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.009 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE SUBSTRING(Col, 1, 3) + '%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE SUBSTRING(Col, 1, 3) + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(("substring"(col, 1, 3))::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 15.861 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LEFT(Col, 5) + '%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LEFT(Col, 5) + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(("left"(col, 5))::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.860 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (Col + '%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (Col + '%') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper((col)::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 9.434 ms +~~END~~ + + + +-- Non-const with CONVERT +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", (col)::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.119 ms +~~END~~ + + + +-- NULL handling +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.540 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.155 ms +~~END~~ + + + +-- Special characters and ESCAPE (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix___' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.195 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'!%something' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'!%something' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '?%something'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'abc!%%' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'abc!%%' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'abc?%%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'back\slash'::"varchar") + Filter: ((col)::text ~~* 'back\slash'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'single''quote'::"varchar") + Filter: ((col)::text ~~* 'single''quote'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'[a-z]%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '[a-z]%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + + +-- ESCAPE (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix___' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'back\slash' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'back\slash'::nvarchar) + Filter: ((col)::text ~~* 'back\slash'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'single''quote' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'single''quote'::nvarchar) + Filter: ((col)::text ~~* 'single''quote'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.107 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'[a-z]%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '[a-z]%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + + +-- ESCAPE (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix___' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'back\slash' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'back\slash'::bpchar) + Filter: ((col)::text ~~* 'back\slash'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'single''quote' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'single''quote'::bpchar) + Filter: ((col)::text ~~* 'single''quote'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'[a-z]%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '[a-z]%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- Unicode and accented characters +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'café'::"varchar") + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'caf'::"varchar") AND (col < 'caf?'::"varchar")) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'rés%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'rés'::"varchar") AND (col < 'rés?'::"varchar")) + Filter: ((col)::text ~~* 'rés%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'résumé'::nvarchar) + Filter: ((col)::text ~~* 'résumé'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'straße' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'straße'::nvarchar) + Filter: ((col)::text ~~* 'straße'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'caf'::nvarchar) AND (col < 'caf?'::nvarchar)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'rés'::nvarchar) AND (col < 'rés?'::nvarchar)) + Filter: ((col)::text ~~* 'rés%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'café'::bpchar) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'caf'::bpchar) AND (col < 'caf?'::bpchar)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'résumé' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'résumé'::bpchar) + Filter: ((col)::text ~~* 'résumé'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'straße' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'straße'::bpchar) + Filter: ((col)::text ~~* 'straße'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'rés%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'rés'::bpchar) AND (col < 'rés?'::bpchar)) + Filter: ((col)::text ~~* 'rés%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + + +-- Boundary cases (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = ''::"varchar") + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a'::"varchar") + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces ' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = ' spaces '::"varchar") + Filter: ((col)::text ~~* ' spaces '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= ' lead'::"varchar") AND (col < ' lead?'::"varchar")) + Filter: ((col)::text ~~* ' lead%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing ' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'trailing '::"varchar") + Filter: ((col)::text ~~* 'trailing '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'nonexistent'::"varchar") AND (col < 'nonexistent?'::"varchar")) + Filter: ((col)::text ~~* 'nonexistent_value_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'zzz%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'zzz'::"varchar") AND (col < 'zzz?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.107 ms +~~END~~ + + + +-- Boundary cases (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = ''::nvarchar) + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'a' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'a'::nvarchar) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.107 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'nonexistent'::nvarchar) AND (col < 'nonexistent?'::nvarchar)) + Filter: ((col)::text ~~* 'nonexistent_value_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'zzz%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: (((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'zzz'::nvarchar) AND (col < 'zzz?'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- Boundary cases (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = ''::bpchar) + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'a' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'a'::bpchar) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'_' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' spaces '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' spaces ' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = ' spaces '::bpchar) + Filter: ((col)::text ~~* ' spaces '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' lead%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' lead%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= ' lead'::bpchar) AND (col < ' lead?'::bpchar)) + Filter: ((col)::text ~~* ' lead%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'trailing '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'trailing ' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'trailing '::bpchar) + Filter: ((col)::text ~~* 'trailing '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'nonexistent'::bpchar) AND (col < 'nonexistent?'::bpchar)) + Filter: ((col)::text ~~* 'nonexistent_value_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'zzz%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: (((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'zzz'::bpchar) AND (col < 'zzz?'::bpchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- Variables and parameters +DECLARE @pattern VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT 'exact match' + Query Text: SELECT 'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.709 ms +~~END~~ + + +DECLARE @pattern NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT N'prefix%' + Query Text: SELECT N'prefix%' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.149 ms +~~END~~ + + +DECLARE @pattern VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@pattern AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT 'exact match' + Query Text: SELECT 'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@pattern" AS NVARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.164 ms +~~END~~ + + +DECLARE @pattern NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @pattern); +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), "@pattern") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.161 ms +~~END~~ + + +DECLARE @pattern VARCHAR(50) = 'test'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern + '%'; +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT 'test' + Query Text: SELECT 'test' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(NULL::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.177 ms +~~END~~ + + + +-- Expression patterns — Constant foldable +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.119 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'EXACT MATCH'::"varchar") + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 9.606 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.151 ms +~~END~~ + + + +-- Function on LHS — Blocks index +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE UPPER(Col) LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE UPPER(Col) LIKE N'EXACT MATCH' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: (((upper(col))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (upper(col) = 'EXACT MATCH'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.150 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LOWER(Col) LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LOWER(Col) LIKE N'prefix%' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: (((lower(col))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (lower(col) >= 'prefix'::"varchar") AND (lower(col) < 'prefix?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LEFT(Col, 10) LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LEFT(Col, 10) LIKE N'prefix%' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((("left"(col, 10))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ("left"(col, 10) >= 'prefix'::"varchar") AND ("left"(col, 10) < 'prefix?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.441 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE RTRIM(Col) LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE RTRIM(Col) LIKE N'exact match' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: (((rtrim(col))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (rtrim(col) = 'exact match'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.139 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE REPLACE(Col, ' ', '') LIKE N'exactmatch'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE REPLACE(Col, ' ', '') LIKE N'exactmatch' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: (((replace(col, ' '::"varchar", ''::"varchar"))::text ~~* 'exactmatch'::text COLLATE bbf_unicode_cp1_cs_as) AND (replace(col, ' '::"varchar", ''::"varchar") = 'exactmatch'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 1.934 ms +~~END~~ + + + +-- Case sensitivity +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'EXACT MATCH'::"varchar") + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'PREFIX'::"varchar") AND (col < 'PREFIX?'::"varchar")) + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.103 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'aAbBcCdDeE'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'aAbBcCdDeE' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'aAbBcCdDeE'::"varchar") + Filter: ((col)::text ~~* 'aAbBcCdDeE'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'EXACT MATCH'::nvarchar) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'PREFIX%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'PREFIX'::nvarchar) AND (col < 'PREFIX?'::nvarchar)) + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'EXACT MATCH'::bpchar) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'PREFIX%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'PREFIX'::bpchar) AND (col < 'PREFIX?'::bpchar)) + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- Covering index and scan variations +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.151 ms +~~END~~ + + +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.905 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT CASE WHEN EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%') THEN 1 ELSE 0 END; +GO +~~START~~ +text +Query Text: SELECT CASE WHEN EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%') THEN 1 ELSE 0 END +Result + InitPlan 1 + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.656 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'straße' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'straße'::"varchar") + Filter: ((col)::text ~~* 'straße'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + + +-- Multiple LIKE conditions +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) OR (((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'test'::"varchar") AND (col < 'test?'::"varchar"))) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.155 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* '%abc'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.169 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id > 5; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id > 5 +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (id > 5)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.540 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id BETWEEN 1 AND 10; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id BETWEEN 1 AND 10 +Aggregate + -> Index Scan using babel_5966_testlikecollation_ci_as_pkey on babel_5966_testlikecollation_ci_as + Index Cond: ((id >= 1) AND (id <= 10)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.181 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col IS NOT NULL; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col IS NOT NULL +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar") AND (col IS NOT NULL)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.155 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id IN (1, 2, 3, 4, 5); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id IN (1, 2, 3, 4, 5) +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (id = ANY ('{1,2,3,4,5}'::integer[]))) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.391 ms +~~END~~ + + + +-- LIKE in different query contexts +SELECT COUNT(*) +FROM BABEL_5966_TestLikeCollation_CI_AS t1 +JOIN BABEL_5966_TestLikeCollation_CI_AS t2 ON t1.Id = t2.Id +WHERE t1.Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) +FROM BABEL_5966_TestLikeCollation_CI_AS t1 +JOIN BABEL_5966_TestLikeCollation_CI_AS t2 ON t1.Id = t2.Id +WHERE t1.Col LIKE N'prefix%' +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as t2 + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 18.491 ms +~~END~~ + + +SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE N'pre%'; +GO +~~START~~ +text +Query Text: SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE N'pre%' +GroupAggregate + Group Key: ("left"(col, 3)) + -> Sort + Sort Key: ("left"(col, 3)) + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((("left"(col, 3))::text ~~* 'pre%'::text COLLATE bbf_unicode_cp1_cs_as) AND ("left"(col, 3) >= 'pre'::"varchar") AND ("left"(col, 3) < 'pre?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 35.678 ms +~~END~~ + + +SELECT COUNT(CASE WHEN Col LIKE N'prefix%' THEN 1 END) FROM BABEL_5966_TestLikeCollation_CI_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(CASE WHEN Col LIKE N'prefix%' THEN 1 END) FROM BABEL_5966_TestLikeCollation_CI_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 26.643 ms +~~END~~ + + +SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +Limit + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.573 ms +~~END~~ + + +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' ORDER BY Col; +GO +~~START~~ +text +Query Text: SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' ORDER BY Col +Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 6.805 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id IN ( + SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id IN ( + SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +) +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 6.490 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS t1 +WHERE EXISTS ( + SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 + WHERE t2.Col LIKE N'prefix%' AND t2.Id = t1.Id +); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS t1 +WHERE EXISTS ( + SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 + WHERE t2.Col LIKE N'prefix%' AND t2.Id = t1.Id +) +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as t2 + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 15.600 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1) +Aggregate + InitPlan 1 + -> Limit + -> Index Scan using babel_5966_testlikecollation_ci_as_pkey on babel_5966_testlikecollation_ci_as babel_5966_testlikecollation_ci_as_1 + Index Cond: (id = 1) + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((InitPlan 1).col1)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 11.945 ms +~~END~~ + + + +-- CI_AS collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.104 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'EXACT MATCH'::"varchar") + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'resume'::"varchar") + Filter: ((col)::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'café'::"varchar") + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'caf'::"varchar") AND (col < 'caf?'::"varchar")) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.123 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar") OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.100 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- CS_AS collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'EXACT MATCH'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'resume'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'café'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'caf'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'caf?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) OR ((col)::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- CI_AI collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.104 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'résumé' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'res%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'res%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'res%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'res'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'res?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'naive'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'naive'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) OR ((remove_accents_internal((col)::text))::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- CS_AI collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'RESUME'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'RESUME'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'res%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'res%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'res%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'res'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'res?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) OR ((remove_accents_internal((col)::text))::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- Cross-collation via COLLATE clause +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 5.946 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.100 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CS_AI; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CS_AI +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.152 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE (N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AS); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE (N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AS) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.104 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CS_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AI +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + + +-- NVARCHAR columns with all collations +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_cs_asbabel_8042afedf3be7883adbc9452d1114ad8 on babel_5966_testlikenvarcollation_cs_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_cs_asbabel_8042afedf3be7883adbc9452d1114ad8 on babel_5966_testlikenvarcollation_cs_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- CHAR columns with all collations +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'EXACT MATCH'::bpchar) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'resume' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'resume'::bpchar) + Filter: ((col)::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'café'::bpchar) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'EXACT MATCH'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'resume' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'resume'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.139 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col <> 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) OR ((col)::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'résumé' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'cafe'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'cafe' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'naive'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'naive' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'naive'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'naive'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) OR ((remove_accents_internal((col)::text))::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'résumé' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'RESUME' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'RESUME'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'RESUME'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) OR ((remove_accents_internal((col)::text))::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + + +-- Cross-datatype with collations +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'café'::"varchar") + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'café'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'café' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'café' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'café'::nvarchar) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'café' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_cs_asbabel_8042afedf3be7883adbc9452d1114ad8 on babel_5966_testlikenvarcollation_cs_as + Index Cond: (col = 'café'::nvarchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'café' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'café' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'café'::bpchar) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'café' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'café' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'café'::bpchar) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'café' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'café' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + + +-- Safety tests for evaluate_expr +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", (col)::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.130 ms +~~END~~ + + +DECLARE @p VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @p); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT 'exact match' + Query Text: SELECT 'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), "@p") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.188 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @p); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'prefix%' + Query Text: SELECT N'prefix%' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), "@p") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.170 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@p AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@p" AS VARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.166 ms +~~END~~ + + +DECLARE @p VARCHAR(50) = 'test'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p + '%'; +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT 'test' + Query Text: SELECT 'test' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p" + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(NULL::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.156 ms +~~END~~ + + +-- Volatile functions +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), NEWID()); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), NEWID()) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", newid(), false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.550 ms +~~END~~ + + +-- Subquery pattern +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1) +Aggregate + InitPlan 1 + -> Limit + -> Index Scan using babel_5966_testlikecollation_ci_as_pkey on babel_5966_testlikecollation_ci_as babel_5966_testlikecollation_ci_as_1 + Index Cond: (id = 1) + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((InitPlan 1).col1)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.161 ms +~~END~~ + + +SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE 'pre%'; +GO +~~START~~ +text +Query Text: SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE 'pre%' +GroupAggregate + Group Key: ("left"(col, 3)) + -> Sort + Sort Key: ("left"(col, 3)) + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((("left"(col, 3))::text ~~* 'pre%'::text COLLATE bbf_unicode_cp1_cs_as) AND ("left"(col, 3) >= 'pre'::"varchar") AND ("left"(col, 3) < 'pre?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.202 ms +~~END~~ + + + +-- CHAR(N) / NCHAR(N) Pattern Tests +SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.174 ms +~~END~~ + + +SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.141 ms +~~END~~ + + +SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.190 ms +~~END~~ + + +SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.127 ms +~~END~~ + + +SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a '::"varchar") + Filter: ((col)::text ~~* 'a '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.132 ms +~~END~~ + + +SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a'::"varchar") + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a '::"varchar") + Filter: ((col)::text ~~* 'a '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.138 ms +~~END~~ + + +SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + +SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match '::"varchar") OR ((col)::text !~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.242 ms +~~END~~ + + +SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match '::nvarchar) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.139 ms +~~END~~ + + +SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match '::bpchar) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match '::bpchar) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.119 ms +~~END~~ + + +SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.123 ms +~~END~~ + + +SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'pre'::"varchar") AND (col < 'pre?'::"varchar")) + Filter: ((col)::text ~~* 'pre%abc '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.122 ms +~~END~~ + + +SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.132 ms +~~END~~ + + +SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match '::nvarchar) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + +SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.225 ms +~~END~~ + + +SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.179 ms +~~END~~ + + +SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.210 ms +~~END~~ + + +SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.125 ms +~~END~~ + + +SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + +SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match '::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match '::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + + +-- Views +SELECT COUNT(*) FROM BABEL_5966_vw_like_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_exact +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.076 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.070 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_suffix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_suffix +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.070 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_contains; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_contains +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_single_char; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_single_char +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_not_like; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_not_like +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text !~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'zzz'::"varchar") OR (col >= 'zzz?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_not_like_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_not_like_exact +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar") OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_exact +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_suffix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_suffix +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_char_exact +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_char_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_suffix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_char_suffix +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_or; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_or +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) OR (((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'test'::"varchar") AND (col < 'test?'::"varchar"))) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_and; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_and +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* '%abc'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_pct; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_pct +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.070 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_underscore; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_underscore +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'café'::"varchar") + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'caf'::"varchar") AND (col < 'caf?'::"varchar")) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_varchar; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_varchar +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_nvarchar; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_nvarchar +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_char; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_char +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.080 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai_prefix +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai_prefix +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nested; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nested +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar") AND (col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix_a%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_with_id; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_with_id +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (id > 0)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.077 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar") AND (col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix_a%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar) AND (col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix_a%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + + +-- Procedures +EXEC BABEL_5966_sp_like_exact_const; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_exact_const + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.927 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_prefix_const; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_prefix_const + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.269 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_suffix_const; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_suffix_const + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param '%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param '%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.053 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param NULL; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param NULL + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.085 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param ''; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param '' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'nonexistent_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.053 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%data%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'%data%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.053 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'café' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.060 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'caf%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'caf%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('caf%'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.053 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('EXACT MATCH'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('PREFIX%'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.052 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'prefix%' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.257 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'exact match' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'%match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'%match' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'café' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.060 ms +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'zzz%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_not_like_param N'zzz%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.121 ms +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_not_like_param N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_not_like_param N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'100!%done', '!'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_escape N'100!%done', '!' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ESCAPE "@esc" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.177 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'under!_score', '!'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_escape N'under!_score', '!' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ESCAPE "@esc" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.065 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'prefix'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'prefix' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('prefix'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.139 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'test'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'test' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('test'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'exact'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'exact' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('exact'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'zzz'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'zzz' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('zzz'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.060 ms +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT; +SELECT @result AS output_prefix; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT + Query Text: SELECT sys.pltsql_assign_var(1, cast((COUNT(*)) as int)) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT "@result" AS output_prefix +Result +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.153 ms +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT; +SELECT @result AS output_exact; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT + Query Text: SELECT sys.pltsql_assign_var(1, cast((COUNT(*)) as int)) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT "@result" AS output_exact +Result +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.150 ms +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT; +SELECT @result AS output_suffix; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT + Query Text: SELECT sys.pltsql_assign_var(1, cast((COUNT(*)) as int)) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT "@result" AS output_suffix +Result +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.140 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'exact match' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.279 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'prefix%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'PREFIX%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'PREFIX%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'café' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.060 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'resume'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'resume' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('resume'::nvarchar(50))::text) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ ('resume'::nvarchar(50))::text) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'exact match' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.282 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'prefix%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'resume'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'resume' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'exact match' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.280 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'prefix%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'café' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.062 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_with_cast 'exact match' + Query Text: SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS VARCHAR(50)) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS NVARCHAR(50)) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.296 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_with_cast 'prefix%' + Query Text: SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS VARCHAR(50)) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS NVARCHAR(50)) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.058 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%' + Query Text: SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" AND Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as)) + Query Text: SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" OR Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.364 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%' + Query Text: SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" AND Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as)) + Query Text: SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" OR Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR ((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.064 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match' + Query Text: SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" AND Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) + Query Text: SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" OR Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.063 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_subquery N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS + WHERE Id IN (SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern") + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.748 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_subquery N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS + WHERE Id IN (SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern") + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.059 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_exists N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS t1 + WHERE EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 WHERE t2.Col LIKE "@pattern" AND t2.Id = t1.Id) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as t2 + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.828 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_exists N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS t1 + WHERE EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 WHERE t2.Col LIKE "@pattern" AND t2.Id = t1.Id) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as t2 + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.058 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'prefix%', 3; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_top N'prefix%', 3 + Query Text: SELECT TOP("@top") Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ORDER BY Col + -> Limit + -> Sort + Sort Key: col NULLS FIRST + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 1.140 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'zzz%', 5; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_top N'zzz%', 5 + Query Text: SELECT TOP("@top") Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ORDER BY Col + -> Limit + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.064 ms +~~END~~ + + +-- Repeated execution +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +EXEC BABEL_5966_sp_like_varchar_param '%match'; +EXEC BABEL_5966_sp_like_varchar_param 'test%'; +EXEC BABEL_5966_sp_like_varchar_param 'a%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param '%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'test%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'a%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'a%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.207 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'test%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'a%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('exact match'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('prefix%'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('%match'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'test%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('test%'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'a%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('a%'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.154 ms +~~END~~ + + +SET babelfish_showplan_all OFF; +GO + + +-- Result correctness +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%data%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + + +-- Cross-type +SELECT COUNT(*) AS varchar_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS char_nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nvarchar_plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS varchar_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS varchar_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS nvarchar_varchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nvarchar_nvarchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS char_varchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS char_nvarchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS varchar_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS varchar_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS varchar_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS nvarchar_varchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nvarchar_nvarchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nvarchar_char FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS char_varchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS char_nvarchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS char_char FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- CAST/CONVERT patterns +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +SELECT COUNT(*) AS cast_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS convert_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match'); +SELECT COUNT(*) AS convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +SELECT COUNT(*) AS nested_cast FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +SELECT COUNT(*) AS triple_cast FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +SELECT COUNT(*) AS convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS try_cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS try_cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS try_convert_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match'); +SELECT COUNT(*) AS try_convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS try_cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +SELECT COUNT(*) AS try_convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +SELECT COUNT(*) AS try_cast FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +SELECT COUNT(*) AS tc_result FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), N'exact match'); +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +SELECT COUNT(*) AS try_cast FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +GO +~~START~~ +int +5 +~~END~~ + +SELECT COUNT(*) AS try_c FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + + +-- TRY_CAST returning NULL (invalid conversion) +SELECT COUNT(*) AS try_cast_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS isnull_first FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback'); +SELECT COUNT(*) AS isnull_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match'); +SELECT COUNT(*) AS coalesce_first FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback'); +SELECT COUNT(*) AS coalesce_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'exact match'); +SELECT COUNT(*) AS nullif_diff FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS isnull_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%'); +SELECT COUNT(*) AS coalesce_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +-- NULLIF returns NULL when args match +SELECT COUNT(*) AS nullif_same FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match'); +GO +~~START~~ +int +0 +~~END~~ + + +-- ISNULL with all NULLs +SELECT COUNT(*) AS isnull_both_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, NULL); +GO +~~START~~ +int +0 +~~END~~ + + + +-- Special characters +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '100!%done' ESCAPE '!'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'under!_score' ESCAPE '!'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'back\slash'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'single''quote'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + + +-- Unicode/accented +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'résumé'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'straße'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'naïve'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'naïve'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'caf%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'rés%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + + +-- Case sensitivity +SELECT COUNT(*) AS lower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nlower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nupper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS lower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'PREFIX%'; +SELECT COUNT(*) AS nlower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS nupper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + + +-- NULL handling +SELECT COUNT(*) AS like_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL; +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS not_like_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL; +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS cast_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)); +GO +~~START~~ +int +0 +~~END~~ + + + +-- Boundary cases +SELECT COUNT(*) AS empty_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ''; +SELECT COUNT(*) AS empty_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS single_a_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'a'; +SELECT COUNT(*) AS single_a_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS underscore_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '_'; +SELECT COUNT(*) AS underscore_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS pct_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%'; +SELECT COUNT(*) AS pct_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO +~~START~~ +int +20048 +~~END~~ + +~~START~~ +int +20048 +~~END~~ + + +SELECT COUNT(*) AS spaces_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ' spaces '; +SELECT COUNT(*) AS spaces_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces '; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS trailing_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'trailing '; +SELECT COUNT(*) AS trailing_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing '; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS leading_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ' lead%'; +SELECT COUNT(*) AS leading_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS nonexist_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'nonexistent_value_xyz'; +SELECT COUNT(*) AS nonexist_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +0 +~~END~~ + + + +-- Collation CI_AS +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Collation CS_AS +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + + +-- Collation CI_AI +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +6 +~~END~~ + +~~START~~ +int +6 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'cafe'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'naive'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive'; +GO +~~START~~ +int +6 +~~END~~ + +~~START~~ +int +6 +~~END~~ + + + +-- Collation CS_AI +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'résumé'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'RESUME'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + + +-- NOT LIKE with collations +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20047 +~~END~~ + +~~START~~ +int +20047 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20047 +~~END~~ + +~~START~~ +int +20047 +~~END~~ + + + +-- Variables +DECLARE @v VARCHAR(50) = 'exact match'; +DECLARE @n NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +DECLARE @v VARCHAR(50) = 'prefix%'; +DECLARE @n NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +DECLARE @v VARCHAR(50) = '%match'; +DECLARE @n NVARCHAR(50) = N'%match'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Expression patterns +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS concat_n FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match'; +SELECT COUNT(*) AS fn_concat FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS upper_fn FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS lower_fn FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Multiple conditions +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' AND Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' OR Col LIKE 'test%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%'; +GO +~~START~~ +int +8 +~~END~~ + +~~START~~ +int +8 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' AND Col LIKE '%abc'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- NVARCHAR column +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +4 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20036 +~~END~~ + +~~START~~ +int +20036 +~~END~~ + + + +-- CHAR column +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20043 +~~END~~ + +~~START~~ +int +20043 +~~END~~ + + + +-- NVARCHAR collation tables +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +4 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + + +-- CHAR collation tables +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Cross-collation COLLATE clause +SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS ci_as_cs_collate FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cs_as_ci_collate FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS ci_as_ai_collate FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +6 +~~END~~ + + + +-- CHAR(N) / NCHAR(N) Pattern Tests +-- CHAR pattern exact match — should NOT match (trailing spaces) +SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern same length — should match (no padding) +SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +GO +~~START~~ +int +3 +~~END~~ + + +-- Compare: CHAR(11) should match, CHAR(20) should NOT +SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with wildcard at end — should still work +SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with large padding +SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR(1) pattern +SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)); +GO +~~START~~ +int +2 +~~END~~ + + +-- CHAR(10) with single char — padded with 9 spaces +SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR(1) with wildcard +SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)); +GO +~~START~~ +int +20048 +~~END~~ + + +-- CHAR(10) with wildcard — becomes '% ' +SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)); +GO +~~START~~ +int +0 +~~END~~ + + +-- NOT LIKE with CHAR pattern +SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +20048 +~~END~~ + + +-- NVARCHAR column with CHAR pattern +SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR column with CHAR pattern (same length as column) +SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + + +-- CHAR column with CHAR pattern (different length) +SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +3 +~~END~~ + + +-- CHAR pattern with leading wildcard +SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with middle wildcard +SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- NCHAR patterns +SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with CONVERT +SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match'); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%'); +GO +~~START~~ +int +0 +~~END~~ + + +-- Nested CHAR casts +SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern across collations +SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + + +-- Views +SELECT COUNT(*) AS vw_exact_varchar FROM BABEL_5966_vw_like_exact; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_varchar FROM BABEL_5966_vw_like_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_suffix_varchar FROM BABEL_5966_vw_like_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_contains_varchar FROM BABEL_5966_vw_like_contains; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_single_char_varchar FROM BABEL_5966_vw_like_single_char; +GO +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS vw_not_like FROM BABEL_5966_vw_not_like; +GO +~~START~~ +int +48 +~~END~~ + + +SELECT COUNT(*) AS vw_not_like_exact FROM BABEL_5966_vw_not_like_exact; +GO +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS vw_exact_nvarchar FROM BABEL_5966_vw_like_nvar_exact; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_nvarchar FROM BABEL_5966_vw_like_nvar_prefix; +GO +~~START~~ +int +4 +~~END~~ + + +SELECT COUNT(*) AS vw_suffix_nvarchar FROM BABEL_5966_vw_like_nvar_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_exact_char FROM BABEL_5966_vw_like_char_exact; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_char FROM BABEL_5966_vw_like_char_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_suffix_char FROM BABEL_5966_vw_like_char_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_or FROM BABEL_5966_vw_like_or; +GO +~~START~~ +int +8 +~~END~~ + + +SELECT COUNT(*) AS vw_and FROM BABEL_5966_vw_like_and; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_mixed FROM BABEL_5966_vw_like_and; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_escape_pct FROM BABEL_5966_vw_like_escape_pct; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_escape_underscore FROM BABEL_5966_vw_like_escape_underscore; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_unicode FROM BABEL_5966_vw_like_unicode; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_unicode_prefix FROM BABEL_5966_vw_like_unicode_prefix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cast_varchar FROM BABEL_5966_vw_like_cast_varchar; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cast_nvarchar FROM BABEL_5966_vw_like_cast_nvarchar; +GO +~~START~~ +int +5 +~~END~~ + + +-- CHAR(20) pattern: should return 0 (trailing spaces, no match) +SELECT COUNT(*) AS vw_cast_char FROM BABEL_5966_vw_like_cast_char; +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_as FROM BABEL_5966_vw_like_ci_as; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_as FROM BABEL_5966_vw_like_cs_as; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_ai FROM BABEL_5966_vw_like_ci_ai; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_ai FROM BABEL_5966_vw_like_cs_ai; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_as_prefix FROM BABEL_5966_vw_like_ci_as_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_as_prefix FROM BABEL_5966_vw_like_cs_as_prefix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_ai_prefix FROM BABEL_5966_vw_like_ci_ai_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_ai_prefix FROM BABEL_5966_vw_like_cs_ai_prefix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_nested FROM BABEL_5966_vw_like_nested; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_with_id FROM BABEL_5966_vw_like_with_id; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_filter FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_nvar_filter FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS vw_join FROM BABEL_5966_vw_like_prefix v +JOIN BABEL_5966_vw_like_nvar_prefix n ON v.Id = n.Id; +GO +~~START~~ +int +4 +~~END~~ + + + +-- Procedures +EXEC BABEL_5966_sp_like_exact_const; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_prefix_const; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_suffix_const; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%'; +GO +~~START~~ +int +20048 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param NULL; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param ''; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz'; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%data%'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'café'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'caf%'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'zzz%'; +GO +~~START~~ +int +48 +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'prefix%'; +GO +~~START~~ +int +20043 +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'100!%done', '!'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'under!_score', '!'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'prefix'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'test'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'exact'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'zzz'; +GO +~~START~~ +int +20000 +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT; +SELECT @result AS output_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT; +SELECT @result AS output_exact; +GO +~~START~~ +int +3 +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT; +SELECT @result AS output_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'PREFIX%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'resume'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +6 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'prefix%'; +GO +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'resume'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%'; +GO +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +8 +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'prefix%', 3; +GO +~~START~~ +varchar +prefix_abc +PREFIX_ABC +Prefix_Abc +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'zzz%', 5; +GO +~~START~~ +varchar +zzz_filler_1 +zzz_filler_10 +zzz_filler_100 +zzz_filler_1000 +zzz_filler_10000 +~~END~~ + + +-- Repeated execution +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +EXEC BABEL_5966_sp_like_varchar_param '%match'; +EXEC BABEL_5966_sp_like_varchar_param 'test%'; +EXEC BABEL_5966_sp_like_varchar_param 'a%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +9 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'test%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'a%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +9 +~~END~~ + + + +-- sp_executesql +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'%match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'prefix%'; +GO +~~START~~ +int +4 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = NULL; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'EXACT MATCH'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'resume'; +GO +~~START~~ +int +6 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'resume'; +GO +~~START~~ +int +2 +~~END~~ + + + + +-- CHECK Constraints +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('valid_data'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('valid'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('invalid_data'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_prefix" violates check constraint "babel_5966_testlikecheck_prefix_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_nprefix (Col) VALUES ('valid_data'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_nprefix (Col) VALUES ('invalid_data'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_nprefix" violates check constraint "babel_5966_testlikecheck_nprefix_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('good_data'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('ok_data'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('bad_data'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_not_like" violates check constraint "babel_5966_testlikecheck_not_like_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('100%done'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('100%almost'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('200%done'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_escape" violates check constraint "babel_5966_testlikecheck_escape_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('is_valid'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('also_valid'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('invalid'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_prefix; +GO +~~START~~ +int#!#varchar +1#!#valid_data +2#!#valid +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_nprefix; +GO +~~START~~ +int#!#varchar +1#!#valid_data +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_not_like; +GO +~~START~~ +int#!#varchar +1#!#good_data +2#!#ok_data +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_escape; +GO +~~START~~ +int#!#varchar +1#!#100%done +2#!#100%almost +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_suffix; +GO +~~START~~ +int#!#varchar +1#!#is_valid +2#!#also_valid +3#!#invalid +~~END~~ + + + +-- UPDATE / DELETE +UPDATE BABEL_5966_TestLikeCollation_CI_AS SET Col = Col WHERE Col LIKE N'prefix%'; +SELECT @@ROWCOUNT AS update_prefix; +GO +~~ROW COUNT: 5~~ + +~~START~~ +int +5 +~~END~~ + + +UPDATE BABEL_5966_TestLikeCollation_CI_AS SET Col = Col WHERE Col NOT LIKE N'zzz%'; +SELECT @@ROWCOUNT AS update_not_zzz; +GO +~~ROW COUNT: 48~~ + +~~START~~ +int +48 +~~END~~ + + +DELETE FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_xyz_abc%'; +SELECT @@ROWCOUNT AS delete_none; +GO +~~START~~ +int +0 +~~END~~ + + +exec sp_babelfish_configure 'explain_costs', 'off'; +GO + +SELECT set_config('enable_bitmapscan', 'on', false); +GO +~~START~~ +text +on +~~END~~ + diff --git a/test/JDBC/expected/non_default_server_collation/chinese_prc_ci_as/babel_collection.out b/test/JDBC/expected/non_default_server_collation/chinese_prc_ci_as/babel_collection.out index c5b693465e5..789ad2ae12f 100644 --- a/test/JDBC/expected/non_default_server_collation/chinese_prc_ci_as/babel_collection.out +++ b/test/JDBC/expected/non_default_server_collation/chinese_prc_ci_as/babel_collection.out @@ -323,8 +323,8 @@ GO ~~START~~ text Query Text: select c1 from testing4 where c1 NOT LIKE 'jones' -Bitmap Heap Scan on testing4 (cost=11.56..31.31 rows=647 width=32) - Filter: ((c1 <> 'jones'::"varchar") AND ((c1)::text !~~* 'jones'::text COLLATE chinese_prc_cs_as)) +Bitmap Heap Scan on testing4 (cost=11.56..31.31 rows=650 width=32) + Filter: ((c1 <> 'jones'::"varchar") OR ((c1)::text !~~* 'jones'::text COLLATE chinese_prc_cs_as)) -> Bitmap Index Scan on c1_idxtesting49a168d73f3ba5aacdfd495b931b8d187 (cost=0.00..11.40 rows=650 width=0) ~~END~~ diff --git a/test/JDBC/expected/non_default_server_collation/chinese_prc_ci_as/like_op_index_scan-vu-verify.out b/test/JDBC/expected/non_default_server_collation/chinese_prc_ci_as/like_op_index_scan-vu-verify.out new file mode 100644 index 00000000000..03165ed7e15 --- /dev/null +++ b/test/JDBC/expected/non_default_server_collation/chinese_prc_ci_as/like_op_index_scan-vu-verify.out @@ -0,0 +1,11931 @@ +-- psql +ANALYZE master_dbo.babel_5966_testlikecollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikecollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikecollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikecollation_cs_ai; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_cs_ai; +ANALYZE master_dbo.babel_5966_testlikecharcollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikecharcollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikecharcollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikecharcollation_cs_ai; +GO + +-- tsql +SELECT set_config('enable_bitmapscan', 'off', false); +GO +~~START~~ +text +off +~~END~~ + + +exec sp_babelfish_configure 'explain_costs', 'off'; +GO + +SET babelfish_showplan_all ON; +GO + + +-- Plain literal (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 119.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- Plain literal (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.102 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + + +-- Plain literal (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + + +-- N-prefix literal (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.162 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%abc'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%abc' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%abc'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.106 ms +~~END~~ + + + +-- N-prefix literal (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + + +-- N-prefix literal (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + + +-- N-prefix with no extractable prefix +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.102 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%else'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%else' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%else'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%else'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%else' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%else'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%a%b%c%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%a%b%c%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%a%b%c%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.084 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_xact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_xact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '_xact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_refix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_refix%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '_refix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'___' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.102 ms +~~END~~ + + + +-- CAST/CONVERT of constants (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 13.815 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.252 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.316 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.237 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + + +-- CONVERT (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.173 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'%match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'%match') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + + +-- CAST/CONVERT (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.125 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + + +-- CAST/CONVERT (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.127 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + + +-- TRY_CAST (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 5.275 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + + +-- TRY_CAST (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + + +-- TRY_CAST (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + + +-- TRY_CAST nested +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(TRY_CAST(N'exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(TRY_CAST(N'exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.316 ms +~~END~~ + + + +-- TRY_CONVERT (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.157 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'%match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'%match') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.166 ms +~~END~~ + + + +-- TRY_CONVERT (NVARCHAR/CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.158 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.120 ms +~~END~~ + + + +-- TRY_CAST/TRY_CONVERT non-const (col ref) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(Col AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(Col AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_try_cast_to_varchar('character varying(50)'::text COLLATE "default", (col)::text))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.340 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), Col); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), Col) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", (col)::text, true, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.573 ms +~~END~~ + + + +-- TRY_CAST/TRY_CONVERT with parameter +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(@p AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST("@p" AS VARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.582 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), @p); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'prefix%' + Query Text: SELECT N'prefix%' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), "@p") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, true, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.666 ms +~~END~~ + + + +-- TRY_CAST with invalid conversion (returns NULL) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_try_cast_floor_int('not a number'::text COLLATE "default"))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 5.724 ms +~~END~~ + + + +-- ISNULL / COALESCE / NULLIF +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'prefix%', 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'prefix%', 'fallback') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.119 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.189 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.137 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.156 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.121 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, NULL, N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, NULL, N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.132 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(Col, 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(Col, 'fallback') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (COALESCE(col, 'fallback'::"varchar"))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.511 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(@p, 'fallback'); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL("@p", 'fallback') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'fallback'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.228 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = NULL; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(@p, N'prefix%'); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT NULL + Query Text: SELECT NULL + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE("@p", N'prefix%') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.165 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.856 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'prefix%', 'something else'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'prefix%', 'something else') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.128 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match') +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + + +-- Cross-datatype combinations (const patterns) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match '::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.107 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + + +-- NOT LIKE variants (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.564 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR (col >= 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- NOT LIKE (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: (((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) OR (col >= 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.141 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text !~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + + +-- NOT LIKE (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.100 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: (((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) OR (col >= 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text !~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- Non-const patterns +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(Col AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(Col AS CHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((col)::bpchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.571 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(Col, '%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(Col, '%') +Finalize Aggregate + -> Gather + Workers Planned: 1 + -> Partial Aggregate + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (concat(VARIADIC ARRAY[col, '%'::"varchar"]))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.903 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE REPLACE(Col, '_', '%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE REPLACE(Col, '_', '%') +Finalize Aggregate + -> Gather + Workers Planned: 1 + -> Partial Aggregate + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (replace(col, '_'::"varchar", '%'::"varchar"))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.939 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE SUBSTRING(Col, 1, 3) + '%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE SUBSTRING(Col, 1, 3) + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(("substring"(col, 1, 3))::text, '%'::text COLLATE bbf_unicode_cp1_ci_as))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 15.728 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LEFT(Col, 5) + '%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LEFT(Col, 5) + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(("left"(col, 5))::text, '%'::text COLLATE bbf_unicode_cp1_ci_as))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.017 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (Col + '%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (Col + '%') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper((col)::text, '%'::text COLLATE bbf_unicode_cp1_ci_as))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 9.346 ms +~~END~~ + + + +-- Non-const with CONVERT +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", (col)::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + + +-- NULL handling +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.570 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.153 ms +~~END~~ + + + +-- Special characters and ESCAPE (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix___' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.206 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'!%something' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'!%something' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '?%something'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'abc!%%' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'abc!%%' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'abc?%%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'back\slash'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'back\slash'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'single''quote'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'single''quote'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'[a-z]%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '[a-z]%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + + +-- ESCAPE (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix___' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.103 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'back\slash' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'back\slash'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'back\slash'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'single''quote' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'single''quote'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'single''quote'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'[a-z]%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '[a-z]%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.106 ms +~~END~~ + + + +-- ESCAPE (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix___' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'back\slash' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'back\slash'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'back\slash'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'single''quote' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'single''quote'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'single''quote'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'[a-z]%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '[a-z]%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + + +-- Unicode and accented characters +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'café'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'caf'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'caf?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'rés%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'rés'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'rés?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'rés%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'résumé'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'résumé'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'stra?e' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'stra?e'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'stra?e'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'caf'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'caf?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'rés'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'rés?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'rés%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'caf'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'caf?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'résumé' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'résumé'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'résumé'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'stra?e' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'stra?e'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'stra?e'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'rés%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'rés'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'rés?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'rés%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + + +-- Boundary cases (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = ''::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.084 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces ' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = ' spaces '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* ' spaces '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.103 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= ' lead'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < ' lead?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* ' lead%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.085 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing ' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'trailing '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'trailing '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'nonexistent'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'nonexistent?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'nonexistent_value_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'zzz%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'zzz'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'zzz?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + + +-- Boundary cases (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = ''::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'a' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'a'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.085 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'nonexistent'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'nonexistent?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'nonexistent_value_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'zzz%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: (((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'zzz'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'zzz?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + + +-- Boundary cases (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = ''::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'a' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'a'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'_' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' spaces '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' spaces ' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = ' spaces '::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* ' spaces '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' lead%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' lead%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= ' lead'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < ' lead?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* ' lead%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'trailing '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'trailing ' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'trailing '::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'trailing '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'nonexistent'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'nonexistent?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'nonexistent_value_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'zzz%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: (((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'zzz'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'zzz?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + + +-- Variables and parameters +DECLARE @pattern VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT 'exact match' + Query Text: SELECT 'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.669 ms +~~END~~ + + +DECLARE @pattern NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT N'prefix%' + Query Text: SELECT N'prefix%' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.145 ms +~~END~~ + + +DECLARE @pattern VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@pattern AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT 'exact match' + Query Text: SELECT 'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@pattern" AS NVARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.161 ms +~~END~~ + + +DECLARE @pattern NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @pattern); +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), "@pattern") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.158 ms +~~END~~ + + +DECLARE @pattern VARCHAR(50) = 'test'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern + '%'; +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT 'test' + Query Text: SELECT 'test' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(NULL::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.172 ms +~~END~~ + + + +-- Expression patterns — Constant foldable +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.106 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'EXACT MATCH'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 9.802 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.149 ms +~~END~~ + + + +-- Function on LHS — Blocks index +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE UPPER(Col) LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE UPPER(Col) LIKE N'EXACT MATCH' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: (((upper(col))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (upper(col) = 'EXACT MATCH'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.963 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LOWER(Col) LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LOWER(Col) LIKE N'prefix%' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: (((lower(col))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (lower(col) >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (lower(col) < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LEFT(Col, 10) LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LEFT(Col, 10) LIKE N'prefix%' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((("left"(col, 10))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ("left"(col, 10) >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND ("left"(col, 10) < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.408 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE RTRIM(Col) LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE RTRIM(Col) LIKE N'exact match' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: (((rtrim(col))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (rtrim(col) = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.136 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE REPLACE(Col, ' ', '') LIKE N'exactmatch'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE REPLACE(Col, ' ', '') LIKE N'exactmatch' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: (((replace(col, ' '::"varchar", ''::"varchar"))::text ~~* 'exactmatch'::text COLLATE bbf_unicode_cp1_cs_as) AND (replace(col, ' '::"varchar", ''::"varchar") = 'exactmatch'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 1.953 ms +~~END~~ + + + +-- Case sensitivity +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'EXACT MATCH'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'PREFIX'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'PREFIX?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'aAbBcCdDeE'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'aAbBcCdDeE' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'aAbBcCdDeE'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'aAbBcCdDeE'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'PREFIX%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'PREFIX'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'PREFIX?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'EXACT MATCH'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'PREFIX%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'PREFIX'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'PREFIX?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.085 ms +~~END~~ + + + +-- Covering index and scan variations +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.149 ms +~~END~~ + + +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.953 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT CASE WHEN EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%') THEN 1 ELSE 0 END; +GO +~~START~~ +text +Query Text: SELECT CASE WHEN EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%') THEN 1 ELSE 0 END +Result + InitPlan 1 + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.630 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'stra?e' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'stra?e'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'stra?e'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- Multiple LIKE conditions +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) OR (((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'test'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'test?'::"varchar" COLLATE bbf_unicode_cp1_ci_as))) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.153 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* '%abc'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.155 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id > 5; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id > 5 +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (id > 5)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.673 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id BETWEEN 1 AND 10; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id BETWEEN 1 AND 10 +Aggregate + -> Index Scan using babel_5966_testlikecollation_ci_as_pkey on babel_5966_testlikecollation_ci_as + Index Cond: ((id >= 1) AND (id <= 10)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.181 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col IS NOT NULL; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col IS NOT NULL +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col IS NOT NULL)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.155 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id IN (1, 2, 3, 4, 5); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id IN (1, 2, 3, 4, 5) +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (id = ANY ('{1,2,3,4,5}'::integer[]))) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.480 ms +~~END~~ + + + +-- LIKE in different query contexts +SELECT COUNT(*) +FROM BABEL_5966_TestLikeCollation_CI_AS t1 +JOIN BABEL_5966_TestLikeCollation_CI_AS t2 ON t1.Id = t2.Id +WHERE t1.Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) +FROM BABEL_5966_TestLikeCollation_CI_AS t1 +JOIN BABEL_5966_TestLikeCollation_CI_AS t2 ON t1.Id = t2.Id +WHERE t1.Col LIKE N'prefix%' +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as t2 + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 18.611 ms +~~END~~ + + +SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE N'pre%'; +GO +~~START~~ +text +Query Text: SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE N'pre%' +GroupAggregate + Group Key: ("left"(col, 3)) + -> Sort + Sort Key: ("left"(col, 3)) COLLATE bbf_unicode_cp1_ci_as + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((("left"(col, 3))::text ~~* 'pre%'::text COLLATE bbf_unicode_cp1_cs_as) AND ("left"(col, 3) >= 'pre'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND ("left"(col, 3) < 'pre?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 35.521 ms +~~END~~ + + +SELECT COUNT(CASE WHEN Col LIKE N'prefix%' THEN 1 END) FROM BABEL_5966_TestLikeCollation_CI_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(CASE WHEN Col LIKE N'prefix%' THEN 1 END) FROM BABEL_5966_TestLikeCollation_CI_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 26.991 ms +~~END~~ + + +SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +Limit + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.643 ms +~~END~~ + + +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' ORDER BY Col; +GO +~~START~~ +text +Query Text: SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' ORDER BY Col +Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 6.768 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id IN ( + SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id IN ( + SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +) +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 6.412 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS t1 +WHERE EXISTS ( + SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 + WHERE t2.Col LIKE N'prefix%' AND t2.Id = t1.Id +); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS t1 +WHERE EXISTS ( + SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 + WHERE t2.Col LIKE N'prefix%' AND t2.Id = t1.Id +) +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as t2 + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 15.584 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1) +Aggregate + InitPlan 1 + -> Limit + -> Index Scan using babel_5966_testlikecollation_ci_as_pkey on babel_5966_testlikecollation_ci_as babel_5966_testlikecollation_ci_as_1 + Index Cond: (id = 1) + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((InitPlan 1).col1)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 12.448 ms +~~END~~ + + + +-- CI_AS collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'EXACT MATCH'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'resume'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'café'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'caf'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'caf?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.129 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + + +-- CS_AS collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'EXACT MATCH'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'resume'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'café'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'caf'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'caf?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) OR ((col)::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + + +-- CI_AI collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.102 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'résumé' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'res%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'res%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'res%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'res'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'res?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'naive'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'naive'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) OR ((remove_accents_internal((col)::text))::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + + +-- CS_AI collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'RESUME'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'RESUME'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'res%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'res%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'res%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'res'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'res?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) OR ((remove_accents_internal((col)::text))::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + + +-- Cross-collation via COLLATE clause +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 5.917 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.105 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CS_AI; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CS_AI +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.172 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE (N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AS); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE (N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AS) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.100 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CS_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AI +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + + +-- NVARCHAR columns with all collations +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_cs_asbabel_8042afedf3be7883adbc9452d1114ad8 on babel_5966_testlikenvarcollation_cs_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_cs_asbabel_8042afedf3be7883adbc9452d1114ad8 on babel_5966_testlikenvarcollation_cs_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.102 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + + +-- CHAR columns with all collations +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'EXACT MATCH'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'resume' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'resume'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.103 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'EXACT MATCH'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'resume' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'resume'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.106 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col <> 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) OR ((col)::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'résumé' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'cafe'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'cafe' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'naive'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'naive' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'naive'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'naive'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) OR ((remove_accents_internal((col)::text))::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.107 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'résumé' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'RESUME' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'RESUME'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'RESUME'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) OR ((remove_accents_internal((col)::text))::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + + +-- Cross-datatype with collations +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'café'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'café'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'café' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'café' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'café'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'café' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_cs_asbabel_8042afedf3be7883adbc9452d1114ad8 on babel_5966_testlikenvarcollation_cs_as + Index Cond: (col = 'café'::nvarchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'café' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'café' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.101 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'café' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'café' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'café' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'café' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'café' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + + +-- Safety tests for evaluate_expr +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", (col)::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +DECLARE @p VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @p); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT 'exact match' + Query Text: SELECT 'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), "@p") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.182 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @p); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'prefix%' + Query Text: SELECT N'prefix%' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), "@p") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.164 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@p AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@p" AS VARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.162 ms +~~END~~ + + +DECLARE @p VARCHAR(50) = 'test'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p + '%'; +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT 'test' + Query Text: SELECT 'test' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p" + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(NULL::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.150 ms +~~END~~ + + +-- Volatile functions +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), NEWID()); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), NEWID()) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", newid(), false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.225 ms +~~END~~ + + +-- Subquery pattern +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1) +Aggregate + InitPlan 1 + -> Limit + -> Index Scan using babel_5966_testlikecollation_ci_as_pkey on babel_5966_testlikecollation_ci_as babel_5966_testlikecollation_ci_as_1 + Index Cond: (id = 1) + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((InitPlan 1).col1)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.153 ms +~~END~~ + + +SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE 'pre%'; +GO +~~START~~ +text +Query Text: SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE 'pre%' +GroupAggregate + Group Key: ("left"(col, 3)) + -> Sort + Sort Key: ("left"(col, 3)) COLLATE bbf_unicode_cp1_ci_as + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((("left"(col, 3))::text ~~* 'pre%'::text COLLATE bbf_unicode_cp1_cs_as) AND ("left"(col, 3) >= 'pre'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND ("left"(col, 3) < 'pre?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.201 ms +~~END~~ + + + +-- CHAR(N) / NCHAR(N) Pattern Tests +SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.191 ms +~~END~~ + + +SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.173 ms +~~END~~ + + +SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.225 ms +~~END~~ + + +SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.123 ms +~~END~~ + + +SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.122 ms +~~END~~ + + +SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.230 ms +~~END~~ + + +SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match '::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.134 ms +~~END~~ + + +SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match '::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match '::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.121 ms +~~END~~ + + +SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'pre'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'pre?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'pre%abc '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.130 ms +~~END~~ + + +SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match '::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.122 ms +~~END~~ + + +SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.223 ms +~~END~~ + + +SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.175 ms +~~END~~ + + +SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.203 ms +~~END~~ + + +SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + +SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.122 ms +~~END~~ + + +SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match '::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match '::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + + +-- Views +SELECT COUNT(*) FROM BABEL_5966_vw_like_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_exact +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.074 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_suffix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_suffix +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.074 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_contains; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_contains +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_single_char; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_single_char +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.066 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_not_like; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_not_like +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text !~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'zzz'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR (col >= 'zzz?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.066 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_not_like_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_not_like_exact +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_exact +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.066 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.066 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_suffix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_suffix +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.066 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_char_exact +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_char_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.066 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_suffix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_char_suffix +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_or; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_or +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) OR (((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'test'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'test?'::"varchar" COLLATE bbf_unicode_cp1_ci_as))) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.066 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_and; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_and +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* '%abc'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.066 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_pct; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_pct +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_underscore; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_underscore +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'café'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'caf'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'caf?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_varchar; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_varchar +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.078 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_nvarchar; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_nvarchar +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_char; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_char +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.066 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai_prefix +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.066 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai_prefix +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nested; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nested +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix_a%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.072 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_with_id; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_with_id +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (id > 0)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.072 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix_a%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix_a%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + + +-- Procedures +EXEC BABEL_5966_sp_like_exact_const; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_exact_const + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.929 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_prefix_const; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_prefix_const + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_suffix_const; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_suffix_const + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param '%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.053 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param '%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.052 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param NULL; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param NULL + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.083 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param ''; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param '' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'nonexistent_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.072 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.053 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%data%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'%data%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.052 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'café' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.058 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'caf%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'caf%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('caf%'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.053 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('EXACT MATCH'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.052 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('PREFIX%'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.052 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'prefix%' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.248 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'exact match' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'%match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'%match' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'café' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.059 ms +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'zzz%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_not_like_param N'zzz%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_not_like_param N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_not_like_param N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.053 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'100!%done', '!'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_escape N'100!%done', '!' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ESCAPE "@esc" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.171 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'under!_score', '!'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_escape N'under!_score', '!' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ESCAPE "@esc" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.063 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'prefix'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'prefix' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('prefix'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.134 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'test'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'test' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('test'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'exact'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'exact' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('exact'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.053 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'zzz'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'zzz' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('zzz'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.058 ms +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT; +SELECT @result AS output_prefix; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT + Query Text: SELECT sys.pltsql_assign_var(1, cast((COUNT(*)) as int)) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT "@result" AS output_prefix +Result +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.152 ms +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT; +SELECT @result AS output_exact; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT + Query Text: SELECT sys.pltsql_assign_var(1, cast((COUNT(*)) as int)) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT "@result" AS output_exact +Result +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.148 ms +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT; +SELECT @result AS output_suffix; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT + Query Text: SELECT sys.pltsql_assign_var(1, cast((COUNT(*)) as int)) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT "@result" AS output_suffix +Result +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.137 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'exact match' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.276 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.058 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'prefix%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'PREFIX%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'PREFIX%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'café' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.059 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'resume'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'resume' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('resume'::nvarchar(50))::text) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ ('resume'::nvarchar(50))::text) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'exact match' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.281 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'prefix%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'resume'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'resume' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'exact match' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.272 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'prefix%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'café' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.059 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_with_cast 'exact match' + Query Text: SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS VARCHAR(50)) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS NVARCHAR(50)) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.265 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_with_cast 'prefix%' + Query Text: SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS VARCHAR(50)) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS NVARCHAR(50)) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%' + Query Text: SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" AND Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as)) + Query Text: SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" OR Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.367 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%' + Query Text: SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" AND Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as)) + Query Text: SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" OR Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR ((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.064 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match' + Query Text: SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" AND Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) + Query Text: SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" OR Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.062 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_subquery N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS + WHERE Id IN (SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern") + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.798 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_subquery N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS + WHERE Id IN (SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern") + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.058 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_exists N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS t1 + WHERE EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 WHERE t2.Col LIKE "@pattern" AND t2.Id = t1.Id) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as t2 + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.852 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_exists N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS t1 + WHERE EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 WHERE t2.Col LIKE "@pattern" AND t2.Id = t1.Id) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as t2 + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.058 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'prefix%', 3; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_top N'prefix%', 3 + Query Text: SELECT TOP("@top") Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ORDER BY Col + -> Limit + -> Sort + Sort Key: col COLLATE bbf_unicode_cp1_ci_as NULLS FIRST + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 1.143 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'zzz%', 5; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_top N'zzz%', 5 + Query Text: SELECT TOP("@top") Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ORDER BY Col + -> Limit + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.064 ms +~~END~~ + + +-- Repeated execution +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +EXEC BABEL_5966_sp_like_varchar_param '%match'; +EXEC BABEL_5966_sp_like_varchar_param 'test%'; +EXEC BABEL_5966_sp_like_varchar_param 'a%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param '%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'test%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'a%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'a%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.228 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'test%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'a%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('exact match'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('prefix%'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('%match'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'test%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('test%'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'a%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('a%'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.138 ms +~~END~~ + + +SET babelfish_showplan_all OFF; +GO + + +-- Result correctness +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%data%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + + +-- Cross-type +SELECT COUNT(*) AS varchar_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS char_nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nvarchar_plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS varchar_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS varchar_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS nvarchar_varchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nvarchar_nvarchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS char_varchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS char_nvarchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS varchar_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS varchar_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS varchar_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS nvarchar_varchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nvarchar_nvarchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nvarchar_char FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS char_varchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS char_nvarchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS char_char FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- CAST/CONVERT patterns +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +SELECT COUNT(*) AS cast_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS convert_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match'); +SELECT COUNT(*) AS convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +SELECT COUNT(*) AS nested_cast FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +SELECT COUNT(*) AS triple_cast FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +SELECT COUNT(*) AS convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS try_cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS try_cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS try_convert_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match'); +SELECT COUNT(*) AS try_convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS try_cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +SELECT COUNT(*) AS try_convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +SELECT COUNT(*) AS try_cast FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +SELECT COUNT(*) AS tc_result FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), N'exact match'); +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +SELECT COUNT(*) AS try_cast FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +GO +~~START~~ +int +5 +~~END~~ + +SELECT COUNT(*) AS try_c FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + + +-- TRY_CAST returning NULL (invalid conversion) +SELECT COUNT(*) AS try_cast_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS isnull_first FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback'); +SELECT COUNT(*) AS isnull_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match'); +SELECT COUNT(*) AS coalesce_first FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback'); +SELECT COUNT(*) AS coalesce_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'exact match'); +SELECT COUNT(*) AS nullif_diff FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS isnull_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%'); +SELECT COUNT(*) AS coalesce_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +-- NULLIF returns NULL when args match +SELECT COUNT(*) AS nullif_same FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match'); +GO +~~START~~ +int +0 +~~END~~ + + +-- ISNULL with all NULLs +SELECT COUNT(*) AS isnull_both_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, NULL); +GO +~~START~~ +int +0 +~~END~~ + + + +-- Special characters +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '100!%done' ESCAPE '!'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'under!_score' ESCAPE '!'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'back\slash'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'single''quote'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + + +-- Unicode/accented +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'résumé'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'straße'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'naïve'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'naïve'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'caf%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'rés%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + + +-- Case sensitivity +SELECT COUNT(*) AS lower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nlower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nupper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS lower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'PREFIX%'; +SELECT COUNT(*) AS nlower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS nupper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + + +-- NULL handling +SELECT COUNT(*) AS like_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL; +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS not_like_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL; +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS cast_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)); +GO +~~START~~ +int +0 +~~END~~ + + + +-- Boundary cases +SELECT COUNT(*) AS empty_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ''; +SELECT COUNT(*) AS empty_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS single_a_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'a'; +SELECT COUNT(*) AS single_a_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS underscore_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '_'; +SELECT COUNT(*) AS underscore_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS pct_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%'; +SELECT COUNT(*) AS pct_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO +~~START~~ +int +20048 +~~END~~ + +~~START~~ +int +20048 +~~END~~ + + +SELECT COUNT(*) AS spaces_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ' spaces '; +SELECT COUNT(*) AS spaces_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces '; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS trailing_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'trailing '; +SELECT COUNT(*) AS trailing_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing '; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS leading_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ' lead%'; +SELECT COUNT(*) AS leading_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS nonexist_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'nonexistent_value_xyz'; +SELECT COUNT(*) AS nonexist_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +0 +~~END~~ + + + +-- Collation CI_AS +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Collation CS_AS +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + + +-- Collation CI_AI +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +6 +~~END~~ + +~~START~~ +int +6 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'cafe'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'naive'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive'; +GO +~~START~~ +int +6 +~~END~~ + +~~START~~ +int +6 +~~END~~ + + + +-- Collation CS_AI +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'résumé'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'RESUME'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + + +-- NOT LIKE with collations +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20047 +~~END~~ + +~~START~~ +int +20047 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20047 +~~END~~ + +~~START~~ +int +20047 +~~END~~ + + + +-- Variables +DECLARE @v VARCHAR(50) = 'exact match'; +DECLARE @n NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +DECLARE @v VARCHAR(50) = 'prefix%'; +DECLARE @n NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +DECLARE @v VARCHAR(50) = '%match'; +DECLARE @n NVARCHAR(50) = N'%match'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Expression patterns +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS concat_n FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match'; +SELECT COUNT(*) AS fn_concat FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS upper_fn FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS lower_fn FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Multiple conditions +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' AND Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' OR Col LIKE 'test%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%'; +GO +~~START~~ +int +8 +~~END~~ + +~~START~~ +int +8 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' AND Col LIKE '%abc'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- NVARCHAR column +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +4 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20036 +~~END~~ + +~~START~~ +int +20036 +~~END~~ + + + +-- CHAR column +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20043 +~~END~~ + +~~START~~ +int +20043 +~~END~~ + + + +-- NVARCHAR collation tables +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +4 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + + +-- CHAR collation tables +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Cross-collation COLLATE clause +SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS ci_as_cs_collate FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cs_as_ci_collate FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS ci_as_ai_collate FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +6 +~~END~~ + + + +-- CHAR(N) / NCHAR(N) Pattern Tests +-- CHAR pattern exact match — should NOT match (trailing spaces) +SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern same length — should match (no padding) +SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +GO +~~START~~ +int +3 +~~END~~ + + +-- Compare: CHAR(11) should match, CHAR(20) should NOT +SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with wildcard at end — should still work +SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with large padding +SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR(1) pattern +SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)); +GO +~~START~~ +int +2 +~~END~~ + + +-- CHAR(10) with single char — padded with 9 spaces +SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR(1) with wildcard +SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)); +GO +~~START~~ +int +20048 +~~END~~ + + +-- CHAR(10) with wildcard — becomes '% ' +SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)); +GO +~~START~~ +int +0 +~~END~~ + + +-- NOT LIKE with CHAR pattern +SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +20048 +~~END~~ + + +-- NVARCHAR column with CHAR pattern +SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR column with CHAR pattern (same length as column) +SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + + +-- CHAR column with CHAR pattern (different length) +SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +3 +~~END~~ + + +-- CHAR pattern with leading wildcard +SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with middle wildcard +SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- NCHAR patterns +SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with CONVERT +SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match'); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%'); +GO +~~START~~ +int +0 +~~END~~ + + +-- Nested CHAR casts +SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern across collations +SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + + +-- Views +SELECT COUNT(*) AS vw_exact_varchar FROM BABEL_5966_vw_like_exact; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_varchar FROM BABEL_5966_vw_like_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_suffix_varchar FROM BABEL_5966_vw_like_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_contains_varchar FROM BABEL_5966_vw_like_contains; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_single_char_varchar FROM BABEL_5966_vw_like_single_char; +GO +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS vw_not_like FROM BABEL_5966_vw_not_like; +GO +~~START~~ +int +48 +~~END~~ + + +SELECT COUNT(*) AS vw_not_like_exact FROM BABEL_5966_vw_not_like_exact; +GO +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS vw_exact_nvarchar FROM BABEL_5966_vw_like_nvar_exact; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_nvarchar FROM BABEL_5966_vw_like_nvar_prefix; +GO +~~START~~ +int +4 +~~END~~ + + +SELECT COUNT(*) AS vw_suffix_nvarchar FROM BABEL_5966_vw_like_nvar_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_exact_char FROM BABEL_5966_vw_like_char_exact; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_char FROM BABEL_5966_vw_like_char_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_suffix_char FROM BABEL_5966_vw_like_char_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_or FROM BABEL_5966_vw_like_or; +GO +~~START~~ +int +8 +~~END~~ + + +SELECT COUNT(*) AS vw_and FROM BABEL_5966_vw_like_and; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_mixed FROM BABEL_5966_vw_like_and; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_escape_pct FROM BABEL_5966_vw_like_escape_pct; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_escape_underscore FROM BABEL_5966_vw_like_escape_underscore; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_unicode FROM BABEL_5966_vw_like_unicode; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_unicode_prefix FROM BABEL_5966_vw_like_unicode_prefix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cast_varchar FROM BABEL_5966_vw_like_cast_varchar; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cast_nvarchar FROM BABEL_5966_vw_like_cast_nvarchar; +GO +~~START~~ +int +5 +~~END~~ + + +-- CHAR(20) pattern: should return 0 (trailing spaces, no match) +SELECT COUNT(*) AS vw_cast_char FROM BABEL_5966_vw_like_cast_char; +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_as FROM BABEL_5966_vw_like_ci_as; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_as FROM BABEL_5966_vw_like_cs_as; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_ai FROM BABEL_5966_vw_like_ci_ai; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_ai FROM BABEL_5966_vw_like_cs_ai; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_as_prefix FROM BABEL_5966_vw_like_ci_as_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_as_prefix FROM BABEL_5966_vw_like_cs_as_prefix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_ai_prefix FROM BABEL_5966_vw_like_ci_ai_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_ai_prefix FROM BABEL_5966_vw_like_cs_ai_prefix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_nested FROM BABEL_5966_vw_like_nested; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_with_id FROM BABEL_5966_vw_like_with_id; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_filter FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_nvar_filter FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS vw_join FROM BABEL_5966_vw_like_prefix v +JOIN BABEL_5966_vw_like_nvar_prefix n ON v.Id = n.Id; +GO +~~START~~ +int +4 +~~END~~ + + + +-- Procedures +EXEC BABEL_5966_sp_like_exact_const; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_prefix_const; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_suffix_const; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%'; +GO +~~START~~ +int +20048 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param NULL; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param ''; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz'; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%data%'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'café'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'caf%'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'zzz%'; +GO +~~START~~ +int +48 +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'prefix%'; +GO +~~START~~ +int +20043 +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'100!%done', '!'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'under!_score', '!'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'prefix'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'test'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'exact'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'zzz'; +GO +~~START~~ +int +20000 +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT; +SELECT @result AS output_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT; +SELECT @result AS output_exact; +GO +~~START~~ +int +3 +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT; +SELECT @result AS output_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'PREFIX%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'resume'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +6 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'prefix%'; +GO +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'resume'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%'; +GO +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +8 +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'prefix%', 3; +GO +~~START~~ +varchar +prefix_abc +PREFIX_ABC +Prefix_Abc +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'zzz%', 5; +GO +~~START~~ +varchar +zzz_filler_1 +zzz_filler_10 +zzz_filler_100 +zzz_filler_1000 +zzz_filler_10000 +~~END~~ + + +-- Repeated execution +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +EXEC BABEL_5966_sp_like_varchar_param '%match'; +EXEC BABEL_5966_sp_like_varchar_param 'test%'; +EXEC BABEL_5966_sp_like_varchar_param 'a%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +9 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'test%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'a%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +9 +~~END~~ + + + +-- sp_executesql +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'%match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'prefix%'; +GO +~~START~~ +int +4 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = NULL; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'EXACT MATCH'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'resume'; +GO +~~START~~ +int +6 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'resume'; +GO +~~START~~ +int +2 +~~END~~ + + + + +-- CHECK Constraints +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('valid_data'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('valid'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('invalid_data'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_prefix" violates check constraint "babel_5966_testlikecheck_prefix_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_nprefix (Col) VALUES ('valid_data'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_nprefix (Col) VALUES ('invalid_data'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_nprefix" violates check constraint "babel_5966_testlikecheck_nprefix_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('good_data'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('ok_data'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('bad_data'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_not_like" violates check constraint "babel_5966_testlikecheck_not_like_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('100%done'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('100%almost'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('200%done'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_escape" violates check constraint "babel_5966_testlikecheck_escape_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('is_valid'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('also_valid'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('invalid'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_prefix; +GO +~~START~~ +int#!#varchar +1#!#valid_data +2#!#valid +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_nprefix; +GO +~~START~~ +int#!#varchar +1#!#valid_data +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_not_like; +GO +~~START~~ +int#!#varchar +1#!#good_data +2#!#ok_data +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_escape; +GO +~~START~~ +int#!#varchar +1#!#100%done +2#!#100%almost +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_suffix; +GO +~~START~~ +int#!#varchar +1#!#is_valid +2#!#also_valid +3#!#invalid +~~END~~ + + + +-- UPDATE / DELETE +UPDATE BABEL_5966_TestLikeCollation_CI_AS SET Col = Col WHERE Col LIKE N'prefix%'; +SELECT @@ROWCOUNT AS update_prefix; +GO +~~ROW COUNT: 5~~ + +~~START~~ +int +5 +~~END~~ + + +UPDATE BABEL_5966_TestLikeCollation_CI_AS SET Col = Col WHERE Col NOT LIKE N'zzz%'; +SELECT @@ROWCOUNT AS update_not_zzz; +GO +~~ROW COUNT: 48~~ + +~~START~~ +int +48 +~~END~~ + + +DELETE FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_xyz_abc%'; +SELECT @@ROWCOUNT AS delete_none; +GO +~~START~~ +int +0 +~~END~~ + + +exec sp_babelfish_configure 'explain_costs', 'off'; +GO + +SELECT set_config('enable_bitmapscan', 'on', false); +GO +~~START~~ +text +on +~~END~~ + diff --git a/test/JDBC/expected/non_default_server_collation/chinese_prc_ci_as/test_constraint_like-vu-prepare.out b/test/JDBC/expected/non_default_server_collation/chinese_prc_ci_as/test_constraint_like-vu-prepare.out index 4a906fe27c7..ba181d7028e 100644 --- a/test/JDBC/expected/non_default_server_collation/chinese_prc_ci_as/test_constraint_like-vu-prepare.out +++ b/test/JDBC/expected/non_default_server_collation/chinese_prc_ci_as/test_constraint_like-vu-prepare.out @@ -414,7 +414,7 @@ SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo GO ~~START~~ text -CHECK ((((sys.remove_accents_internal(((('123'::sys."varchar")::sys.nvarchar(3))::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ((sys.remove_accents_internal(((123)::sys."varchar"(3))::text))::text COLLATE sys.bbf_unicode_cp1_cs_as))) +CHECK ((((sys.remove_accents_internal(((('123'::sys."varchar")::sys.nvarchar(3))::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('123'::text COLLATE sys.bbf_unicode_cp1_cs_as))) ~~END~~ diff --git a/test/JDBC/expected/non_default_server_collation/chinese_prc_ci_as/test_constraint_like-vu-verify.out b/test/JDBC/expected/non_default_server_collation/chinese_prc_ci_as/test_constraint_like-vu-verify.out index a2fb7149f79..c425531ff2a 100644 --- a/test/JDBC/expected/non_default_server_collation/chinese_prc_ci_as/test_constraint_like-vu-verify.out +++ b/test/JDBC/expected/non_default_server_collation/chinese_prc_ci_as/test_constraint_like-vu-verify.out @@ -699,7 +699,7 @@ SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo GO ~~START~~ text -CHECK ((((sys.remove_accents_internal(((('123'::sys."varchar")::sys.nvarchar(3))::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ((sys.remove_accents_internal(((123)::sys."varchar"(3))::text))::text COLLATE sys.bbf_unicode_cp1_cs_as))) +CHECK ((((sys.remove_accents_internal(((('123'::sys."varchar")::sys.nvarchar(3))::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('123'::text COLLATE sys.bbf_unicode_cp1_cs_as))) ~~END~~ diff --git a/test/JDBC/expected/non_default_server_collation/japanese_ci_as/like_op_index_scan-vu-verify.out b/test/JDBC/expected/non_default_server_collation/japanese_ci_as/like_op_index_scan-vu-verify.out new file mode 100644 index 00000000000..3deec5caa23 --- /dev/null +++ b/test/JDBC/expected/non_default_server_collation/japanese_ci_as/like_op_index_scan-vu-verify.out @@ -0,0 +1,11931 @@ +-- psql +ANALYZE master_dbo.babel_5966_testlikecollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikecollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikecollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikecollation_cs_ai; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_cs_ai; +ANALYZE master_dbo.babel_5966_testlikecharcollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikecharcollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikecharcollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikecharcollation_cs_ai; +GO + +-- tsql +SELECT set_config('enable_bitmapscan', 'off', false); +GO +~~START~~ +text +off +~~END~~ + + +exec sp_babelfish_configure 'explain_costs', 'off'; +GO + +SET babelfish_showplan_all ON; +GO + + +-- Plain literal (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 121.196 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.283 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.133 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + + +-- Plain literal (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.127 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + + +-- Plain literal (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + + +-- N-prefix literal (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.162 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%abc'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%abc' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%abc'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.103 ms +~~END~~ + + + +-- N-prefix literal (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + + +-- N-prefix literal (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + + +-- N-prefix with no extractable prefix +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.103 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%else'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%else' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%else'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%else'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%else' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%else'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%a%b%c%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%a%b%c%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%a%b%c%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_xact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_xact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '_xact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.106 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_refix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_refix%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '_refix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'___' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + + +-- CAST/CONVERT of constants (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 13.924 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.193 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.237 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.243 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.233 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + + +-- CONVERT (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.956 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'%match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'%match') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.125 ms +~~END~~ + + + +-- CAST/CONVERT (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.127 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + + +-- CAST/CONVERT (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.127 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + + +-- TRY_CAST (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 5.219 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.121 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + + +-- TRY_CAST (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + + +-- TRY_CAST (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.125 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + + +-- TRY_CAST nested +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(TRY_CAST(N'exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(TRY_CAST(N'exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.327 ms +~~END~~ + + + +-- TRY_CONVERT (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.149 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'%match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'%match') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + + +-- TRY_CONVERT (NVARCHAR/CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.125 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.154 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + + +-- TRY_CAST/TRY_CONVERT non-const (col ref) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(Col AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(Col AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_try_cast_to_varchar('character varying(50)'::text COLLATE "default", (col)::text))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.335 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), Col); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), Col) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", (col)::text, true, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.509 ms +~~END~~ + + + +-- TRY_CAST/TRY_CONVERT with parameter +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(@p AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST("@p" AS VARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.651 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), @p); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'prefix%' + Query Text: SELECT N'prefix%' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), "@p") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, true, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.845 ms +~~END~~ + + + +-- TRY_CAST with invalid conversion (returns NULL) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_try_cast_floor_int('not a number'::text COLLATE "default"))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 5.034 ms +~~END~~ + + + +-- ISNULL / COALESCE / NULLIF +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.984 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'prefix%', 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'prefix%', 'fallback') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.125 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.160 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.821 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, NULL, N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, NULL, N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(Col, 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(Col, 'fallback') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (COALESCE(col, 'fallback'::"varchar"))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.508 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(@p, 'fallback'); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL("@p", 'fallback') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'fallback'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.227 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = NULL; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(@p, N'prefix%'); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT NULL + Query Text: SELECT NULL + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE("@p", N'prefix%') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.166 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.715 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'prefix%', 'something else'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'prefix%', 'something else') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match') +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + + +-- Cross-datatype combinations (const patterns) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match '::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + + +-- NOT LIKE variants (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.551 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR (col >= 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + + +-- NOT LIKE (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: (((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) OR (col >= 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text !~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + + +-- NOT LIKE (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: (((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) OR (col >= 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text !~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + + +-- Non-const patterns +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(Col AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(Col AS CHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((col)::bpchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.133 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.485 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.125 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(Col, '%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(Col, '%') +Finalize Aggregate + -> Gather + Workers Planned: 1 + -> Partial Aggregate + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (concat(VARIADIC ARRAY[col, '%'::"varchar"]))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.909 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE REPLACE(Col, '_', '%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE REPLACE(Col, '_', '%') +Finalize Aggregate + -> Gather + Workers Planned: 1 + -> Partial Aggregate + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (replace(col, '_'::"varchar", '%'::"varchar"))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.862 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE SUBSTRING(Col, 1, 3) + '%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE SUBSTRING(Col, 1, 3) + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(("substring"(col, 1, 3))::text, '%'::text COLLATE bbf_unicode_cp1_ci_as))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 15.655 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LEFT(Col, 5) + '%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LEFT(Col, 5) + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(("left"(col, 5))::text, '%'::text COLLATE bbf_unicode_cp1_ci_as))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.747 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (Col + '%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (Col + '%') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper((col)::text, '%'::text COLLATE bbf_unicode_cp1_ci_as))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 9.540 ms +~~END~~ + + + +-- Non-const with CONVERT +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", (col)::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.126 ms +~~END~~ + + + +-- NULL handling +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.524 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.158 ms +~~END~~ + + + +-- Special characters and ESCAPE (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix___' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.197 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.100 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'!%something' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'!%something' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '?%something'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'abc!%%' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'abc!%%' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'abc?%%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'back\slash'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'back\slash'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'single''quote'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'single''quote'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'[a-z]%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '[a-z]%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + + +-- ESCAPE (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix___' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'back\slash' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'back\slash'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'back\slash'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'single''quote' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'single''quote'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'single''quote'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'[a-z]%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '[a-z]%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- ESCAPE (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix___' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'back\slash' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'back\slash'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'back\slash'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'single''quote' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'single''quote'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'single''quote'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'[a-z]%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '[a-z]%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- Unicode and accented characters +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf?' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'caf?'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'caf'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'caf?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'r?s%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'r?s'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'r?s?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'r?s%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'r?sum?' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'r?sum?'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'r?sum?'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'stra?e' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'stra?e'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'stra?e'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'caf'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'caf?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'r?s%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'r?s'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'r?s?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'r?s%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'caf?' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'caf?'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'caf'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'caf?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'r?sum?' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'r?sum?'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'r?sum?'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'stra?e' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'stra?e'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'stra?e'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'r?s%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'r?s'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'r?s?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'r?s%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + + +-- Boundary cases (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = ''::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces ' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = ' spaces '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* ' spaces '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= ' lead'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < ' lead?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* ' lead%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing ' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'trailing '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'trailing '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'nonexistent'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'nonexistent?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'nonexistent_value_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'zzz%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'zzz'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'zzz?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + + +-- Boundary cases (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = ''::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'a' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'a'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'nonexistent'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'nonexistent?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'nonexistent_value_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'zzz%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: (((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'zzz'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'zzz?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- Boundary cases (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = ''::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'a' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'a'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'_' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' spaces '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' spaces ' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = ' spaces '::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* ' spaces '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' lead%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' lead%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= ' lead'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < ' lead?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* ' lead%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'trailing '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'trailing ' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'trailing '::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'trailing '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'nonexistent'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'nonexistent?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'nonexistent_value_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'zzz%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: (((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'zzz'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'zzz?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- Variables and parameters +DECLARE @pattern VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT 'exact match' + Query Text: SELECT 'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.683 ms +~~END~~ + + +DECLARE @pattern NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT N'prefix%' + Query Text: SELECT N'prefix%' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.150 ms +~~END~~ + + +DECLARE @pattern VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@pattern AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT 'exact match' + Query Text: SELECT 'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@pattern" AS NVARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.165 ms +~~END~~ + + +DECLARE @pattern NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @pattern); +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), "@pattern") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.162 ms +~~END~~ + + +DECLARE @pattern VARCHAR(50) = 'test'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern + '%'; +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT 'test' + Query Text: SELECT 'test' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(NULL::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.185 ms +~~END~~ + + + +-- Expression patterns — Constant foldable +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.136 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.120 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'EXACT MATCH'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 9.588 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.265 ms +~~END~~ + + + +-- Function on LHS — Blocks index +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE UPPER(Col) LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE UPPER(Col) LIKE N'EXACT MATCH' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: (((upper(col))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (upper(col) = 'EXACT MATCH'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.052 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LOWER(Col) LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LOWER(Col) LIKE N'prefix%' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: (((lower(col))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (lower(col) >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (lower(col) < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LEFT(Col, 10) LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LEFT(Col, 10) LIKE N'prefix%' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((("left"(col, 10))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ("left"(col, 10) >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND ("left"(col, 10) < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.445 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE RTRIM(Col) LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE RTRIM(Col) LIKE N'exact match' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: (((rtrim(col))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (rtrim(col) = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.139 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE REPLACE(Col, ' ', '') LIKE N'exactmatch'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE REPLACE(Col, ' ', '') LIKE N'exactmatch' +Aggregate + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: (((replace(col, ' '::"varchar", ''::"varchar"))::text ~~* 'exactmatch'::text COLLATE bbf_unicode_cp1_cs_as) AND (replace(col, ' '::"varchar", ''::"varchar") = 'exactmatch'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 1.950 ms +~~END~~ + + + +-- Case sensitivity +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'EXACT MATCH'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'PREFIX'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'PREFIX?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'aAbBcCdDeE'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'aAbBcCdDeE' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'aAbBcCdDeE'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'aAbBcCdDeE'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'PREFIX%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'PREFIX'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'PREFIX?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'EXACT MATCH'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'PREFIX%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'PREFIX'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'PREFIX?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- Covering index and scan variations +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.147 ms +~~END~~ + + +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.920 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT CASE WHEN EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%') THEN 1 ELSE 0 END; +GO +~~START~~ +text +Query Text: SELECT CASE WHEN EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%') THEN 1 ELSE 0 END +Result + InitPlan 1 + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.640 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'stra?e' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'stra?e'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'stra?e'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.101 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + + +-- Multiple LIKE conditions +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) OR (((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'test'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'test?'::"varchar" COLLATE bbf_unicode_cp1_ci_as))) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.154 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* '%abc'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.163 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id > 5; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id > 5 +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (id > 5)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.544 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id BETWEEN 1 AND 10; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id BETWEEN 1 AND 10 +Aggregate + -> Index Scan using babel_5966_testlikecollation_ci_as_pkey on babel_5966_testlikecollation_ci_as + Index Cond: ((id >= 1) AND (id <= 10)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.184 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col IS NOT NULL; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col IS NOT NULL +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col IS NOT NULL)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.155 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id IN (1, 2, 3, 4, 5); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id IN (1, 2, 3, 4, 5) +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (id = ANY ('{1,2,3,4,5}'::integer[]))) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.395 ms +~~END~~ + + + +-- LIKE in different query contexts +SELECT COUNT(*) +FROM BABEL_5966_TestLikeCollation_CI_AS t1 +JOIN BABEL_5966_TestLikeCollation_CI_AS t2 ON t1.Id = t2.Id +WHERE t1.Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) +FROM BABEL_5966_TestLikeCollation_CI_AS t1 +JOIN BABEL_5966_TestLikeCollation_CI_AS t2 ON t1.Id = t2.Id +WHERE t1.Col LIKE N'prefix%' +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as t2 + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 18.566 ms +~~END~~ + + +SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE N'pre%'; +GO +~~START~~ +text +Query Text: SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE N'pre%' +GroupAggregate + Group Key: ("left"(col, 3)) + -> Sort + Sort Key: ("left"(col, 3)) COLLATE bbf_unicode_cp1_ci_as + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((("left"(col, 3))::text ~~* 'pre%'::text COLLATE bbf_unicode_cp1_cs_as) AND ("left"(col, 3) >= 'pre'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND ("left"(col, 3) < 'pre?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 35.684 ms +~~END~~ + + +SELECT COUNT(CASE WHEN Col LIKE N'prefix%' THEN 1 END) FROM BABEL_5966_TestLikeCollation_CI_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(CASE WHEN Col LIKE N'prefix%' THEN 1 END) FROM BABEL_5966_TestLikeCollation_CI_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 27.700 ms +~~END~~ + + +SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +Limit + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.641 ms +~~END~~ + + +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' ORDER BY Col; +GO +~~START~~ +text +Query Text: SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' ORDER BY Col +Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.262 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id IN ( + SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id IN ( + SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +) +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 6.445 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS t1 +WHERE EXISTS ( + SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 + WHERE t2.Col LIKE N'prefix%' AND t2.Id = t1.Id +); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS t1 +WHERE EXISTS ( + SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 + WHERE t2.Col LIKE N'prefix%' AND t2.Id = t1.Id +) +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as t2 + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 15.547 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1) +Aggregate + InitPlan 1 + -> Limit + -> Index Scan using babel_5966_testlikecollation_ci_as_pkey on babel_5966_testlikecollation_ci_as babel_5966_testlikecollation_ci_as_1 + Index Cond: (id = 1) + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((InitPlan 1).col1)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 11.847 ms +~~END~~ + + + +-- CI_AS collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.105 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'EXACT MATCH'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'resume'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf?' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'caf?'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'caf'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'caf?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.120 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + + +-- CS_AS collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'EXACT MATCH'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'resume'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'caf?' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'caf?'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'caf%' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'caf'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'caf?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.139 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) OR ((col)::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- CI_AI collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.107 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.104 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'r?sum?' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.119 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'res%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'res%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'res%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'res'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'res?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'naive'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'naive'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) OR ((remove_accents_internal((col)::text))::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- CS_AI collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'r?sum?' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'RESUME'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'RESUME'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'res%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'res%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'res%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'res'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'res?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) OR ((remove_accents_internal((col)::text))::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- Cross-collation via COLLATE clause +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 5.933 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.102 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CS_AI; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CS_AI +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.103 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.101 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.100 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.156 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE (N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AS); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE (N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AS) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.104 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CS_AS +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AI +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.100 ms +~~END~~ + + + +-- NVARCHAR columns with all collations +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_cs_asbabel_8042afedf3be7883adbc9452d1114ad8 on babel_5966_testlikenvarcollation_cs_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.131 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_cs_asbabel_8042afedf3be7883adbc9452d1114ad8 on babel_5966_testlikenvarcollation_cs_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + + +-- CHAR columns with all collations +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'EXACT MATCH'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'resume' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'resume'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'caf?' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'caf?'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.121 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'EXACT MATCH'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'resume' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'resume'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'caf?' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'caf?'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.120 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col <> 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) OR ((col)::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'r?sum?' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.100 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'cafe'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'cafe' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.106 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'naive'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'naive' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'naive'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'naive'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) OR ((remove_accents_internal((col)::text))::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.100 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'resume' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'r?sum?' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'RESUME' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'RESUME'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'RESUME'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.135 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col NOT LIKE N'exact match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) OR ((remove_accents_internal((col)::text))::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'%match' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE Col +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + + +-- Cross-datatype with collations +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf?' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'caf?'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.104 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'caf?' +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'caf?'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'caf?' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.100 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'caf?' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'caf?' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'caf?'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.100 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'caf?' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_cs_asbabel_8042afedf3be7883adbc9452d1114ad8 on babel_5966_testlikenvarcollation_cs_as + Index Cond: (col = 'caf?'::nvarchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'caf?' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'caf?' +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'caf?' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'caf?'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'caf?' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'caf?'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'caf?' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'caf?' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.125 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'caf?' +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'caf?'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'caf?' +Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'caf?'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'caf?' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'caf?' +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + + +-- Safety tests for evaluate_expr +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", (col)::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.130 ms +~~END~~ + + +DECLARE @p VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @p); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT 'exact match' + Query Text: SELECT 'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), "@p") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.197 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @p); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'prefix%' + Query Text: SELECT N'prefix%' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), "@p") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.179 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@p AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@p" AS VARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.177 ms +~~END~~ + + +DECLARE @p VARCHAR(50) = 'test'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p + '%'; +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT 'test' + Query Text: SELECT 'test' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p" + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(NULL::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.166 ms +~~END~~ + + +-- Volatile functions +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), NEWID()); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), NEWID()) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", newid(), false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.476 ms +~~END~~ + + +-- Subquery pattern +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1) +Aggregate + InitPlan 1 + -> Limit + -> Index Scan using babel_5966_testlikecollation_ci_as_pkey on babel_5966_testlikecollation_ci_as babel_5966_testlikecollation_ci_as_1 + Index Cond: (id = 1) + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((InitPlan 1).col1)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.169 ms +~~END~~ + + +SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE 'pre%'; +GO +~~START~~ +text +Query Text: SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE 'pre%' +GroupAggregate + Group Key: ("left"(col, 3)) + -> Sort + Sort Key: ("left"(col, 3)) COLLATE bbf_unicode_cp1_ci_as + -> Gather + Workers Planned: 1 + -> Parallel Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((("left"(col, 3))::text ~~* 'pre%'::text COLLATE bbf_unicode_cp1_cs_as) AND ("left"(col, 3) >= 'pre'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND ("left"(col, 3) < 'pre?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.212 ms +~~END~~ + + + +-- CHAR(N) / NCHAR(N) Pattern Tests +SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.190 ms +~~END~~ + + +SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.146 ms +~~END~~ + + +SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.221 ms +~~END~~ + + +SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.129 ms +~~END~~ + + +SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.127 ms +~~END~~ + + +SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.119 ms +~~END~~ + + +SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'a '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.119 ms +~~END~~ + + +SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.246 ms +~~END~~ + + +SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match '::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.143 ms +~~END~~ + + +SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match '::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.120 ms +~~END~~ + + +SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match '::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.134 ms +~~END~~ + + +SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.127 ms +~~END~~ + + +SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'pre'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'pre?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'pre%abc '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.126 ms +~~END~~ + + +SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.136 ms +~~END~~ + + +SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match '::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.130 ms +~~END~~ + + +SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + +SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.241 ms +~~END~~ + + +SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.125 ms +~~END~~ + + +SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.186 ms +~~END~~ + + +SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.216 ms +~~END~~ + + +SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.131 ms +~~END~~ + + +SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.127 ms +~~END~~ + + +SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match '::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.142 ms +~~END~~ + + +SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match '::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.121 ms +~~END~~ + + + +-- Views +SELECT COUNT(*) FROM BABEL_5966_vw_like_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_exact +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.084 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.073 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_suffix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_suffix +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_contains; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_contains +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.072 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_single_char; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_single_char +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_not_like; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_not_like +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text !~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'zzz'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR (col >= 'zzz?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_not_like_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_not_like_exact +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.072 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_exact +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.072 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_suffix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_suffix +Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.072 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_char_exact +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_char_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_suffix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_char_suffix +Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.073 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_or; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_or +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) OR (((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'test'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'test?'::"varchar" COLLATE bbf_unicode_cp1_ci_as))) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_and; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_and +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* '%abc'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_pct; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_pct +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.076 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_underscore; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_underscore +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.072 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'caf?'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'caf'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'caf?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.072 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_varchar; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_varchar +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.072 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_nvarchar; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_nvarchar +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.070 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_char; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_char +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.070 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as_prefix +Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.070 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai_prefix +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai_prefix +Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nested; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nested +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix_a%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.072 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_with_id; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_with_id +Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (id > 0)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.075 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix_a%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.103 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%' +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_as)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix_a%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + + +-- Procedures +EXEC BABEL_5966_sp_like_exact_const; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_exact_const + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_ci_as) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.088 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_prefix_const; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_prefix_const + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_ci_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_ci_as)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_suffix_const; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_suffix_const + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.120 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param '%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param '%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param NULL; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param NULL + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param ''; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param '' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'nonexistent_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.122 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.071 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%data%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'%data%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'caf?' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.061 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'caf%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'caf%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('caf%'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('EXACT MATCH'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('PREFIX%'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'prefix%' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.265 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'exact match' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.058 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'%match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'%match' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'caf?' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.061 ms +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'zzz%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_not_like_param N'zzz%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_not_like_param N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_not_like_param N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'100!%done', '!'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_escape N'100!%done', '!' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ESCAPE "@esc" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.187 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'under!_score', '!'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_escape N'under!_score', '!' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ESCAPE "@esc" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'prefix'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'prefix' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('prefix'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.146 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'test'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'test' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('test'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'exact'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'exact' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('exact'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'zzz'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'zzz' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('zzz'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.061 ms +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT; +SELECT @result AS output_prefix; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT + Query Text: SELECT sys.pltsql_assign_var(1, cast((COUNT(*)) as int)) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT "@result" AS output_prefix +Result +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.160 ms +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT; +SELECT @result AS output_exact; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT + Query Text: SELECT sys.pltsql_assign_var(1, cast((COUNT(*)) as int)) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT "@result" AS output_exact +Result +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.165 ms +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT; +SELECT @result AS output_suffix; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT + Query Text: SELECT sys.pltsql_assign_var(1, cast((COUNT(*)) as int)) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT "@result" AS output_suffix +Result +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.176 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'exact match' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.286 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.059 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'prefix%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.074 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'PREFIX%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'PREFIX%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'caf?' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.060 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'resume'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'resume' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('resume'::nvarchar(50))::text) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ ('resume'::nvarchar(50))::text) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'exact match' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.293 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.058 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'prefix%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'resume'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'resume' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.058 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'exact match' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.289 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.059 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'prefix%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'caf?' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'caf?'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.061 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_with_cast 'exact match' + Query Text: SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS VARCHAR(50)) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS NVARCHAR(50)) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.281 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_with_cast 'prefix%' + Query Text: SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS VARCHAR(50)) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS NVARCHAR(50)) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%' + Query Text: SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" AND Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as)) + Query Text: SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" OR Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.389 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%' + Query Text: SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" AND Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as)) + Query Text: SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" OR Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR ((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match' + Query Text: SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" AND Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) + Query Text: SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" OR Col LIKE "@p2" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.064 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_subquery N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS + WHERE Id IN (SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern") + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.815 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_subquery N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS + WHERE Id IN (SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern") + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.061 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_exists N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS t1 + WHERE EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 WHERE t2.Col LIKE "@pattern" AND t2.Id = t1.Id) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as t2 + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.864 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_exists N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS t1 + WHERE EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 WHERE t2.Col LIKE "@pattern" AND t2.Id = t1.Id) + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as t2 + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.060 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'prefix%', 3; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_top N'prefix%', 3 + Query Text: SELECT TOP("@top") Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ORDER BY Col + -> Limit + -> Sort + Sort Key: col COLLATE bbf_unicode_cp1_ci_as NULLS FIRST + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 1.169 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'zzz%', 5; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_top N'zzz%', 5 + Query Text: SELECT TOP("@top") Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ORDER BY Col + -> Limit + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.066 ms +~~END~~ + + +-- Repeated execution +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +EXEC BABEL_5966_sp_like_varchar_param '%match'; +EXEC BABEL_5966_sp_like_varchar_param 'test%'; +EXEC BABEL_5966_sp_like_varchar_param 'a%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param '%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'test%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'a%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'a%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.214 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'test%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'a%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('exact match'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('prefix%'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('%match'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'test%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('test%'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'a%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('a%'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.146 ms +~~END~~ + + +SET babelfish_showplan_all OFF; +GO + + +-- Result correctness +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%data%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + + +-- Cross-type +SELECT COUNT(*) AS varchar_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS char_nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nvarchar_plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS varchar_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS varchar_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS nvarchar_varchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nvarchar_nvarchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS char_varchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS char_nvarchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS varchar_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS varchar_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS varchar_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS nvarchar_varchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nvarchar_nvarchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nvarchar_char FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS char_varchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS char_nvarchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS char_char FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- CAST/CONVERT patterns +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +SELECT COUNT(*) AS cast_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS convert_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match'); +SELECT COUNT(*) AS convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +SELECT COUNT(*) AS nested_cast FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +SELECT COUNT(*) AS triple_cast FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +SELECT COUNT(*) AS convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS try_cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS try_cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS try_convert_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match'); +SELECT COUNT(*) AS try_convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS try_cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +SELECT COUNT(*) AS try_convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +SELECT COUNT(*) AS try_cast FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +SELECT COUNT(*) AS tc_result FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), N'exact match'); +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +SELECT COUNT(*) AS try_cast FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +GO +~~START~~ +int +5 +~~END~~ + +SELECT COUNT(*) AS try_c FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + + +-- TRY_CAST returning NULL (invalid conversion) +SELECT COUNT(*) AS try_cast_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS isnull_first FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback'); +SELECT COUNT(*) AS isnull_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match'); +SELECT COUNT(*) AS coalesce_first FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback'); +SELECT COUNT(*) AS coalesce_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'exact match'); +SELECT COUNT(*) AS nullif_diff FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS isnull_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%'); +SELECT COUNT(*) AS coalesce_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +-- NULLIF returns NULL when args match +SELECT COUNT(*) AS nullif_same FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match'); +GO +~~START~~ +int +0 +~~END~~ + + +-- ISNULL with all NULLs +SELECT COUNT(*) AS isnull_both_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, NULL); +GO +~~START~~ +int +0 +~~END~~ + + + +-- Special characters +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '100!%done' ESCAPE '!'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'under!_score' ESCAPE '!'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'back\slash'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'single''quote'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + + +-- Unicode/accented +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'résumé'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'straße'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'naïve'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'naïve'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'caf%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'rés%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + + +-- Case sensitivity +SELECT COUNT(*) AS lower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nlower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nupper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS lower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'PREFIX%'; +SELECT COUNT(*) AS nlower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS nupper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + + +-- NULL handling +SELECT COUNT(*) AS like_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL; +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS not_like_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL; +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS cast_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)); +GO +~~START~~ +int +0 +~~END~~ + + + +-- Boundary cases +SELECT COUNT(*) AS empty_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ''; +SELECT COUNT(*) AS empty_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS single_a_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'a'; +SELECT COUNT(*) AS single_a_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS underscore_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '_'; +SELECT COUNT(*) AS underscore_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS pct_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%'; +SELECT COUNT(*) AS pct_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO +~~START~~ +int +20048 +~~END~~ + +~~START~~ +int +20048 +~~END~~ + + +SELECT COUNT(*) AS spaces_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ' spaces '; +SELECT COUNT(*) AS spaces_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces '; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS trailing_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'trailing '; +SELECT COUNT(*) AS trailing_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing '; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS leading_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ' lead%'; +SELECT COUNT(*) AS leading_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS nonexist_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'nonexistent_value_xyz'; +SELECT COUNT(*) AS nonexist_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +0 +~~END~~ + + + +-- Collation CI_AS +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Collation CS_AS +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + + +-- Collation CI_AI +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +6 +~~END~~ + +~~START~~ +int +6 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'cafe'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'naive'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive'; +GO +~~START~~ +int +6 +~~END~~ + +~~START~~ +int +6 +~~END~~ + + + +-- Collation CS_AI +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'résumé'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'RESUME'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + + +-- NOT LIKE with collations +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20047 +~~END~~ + +~~START~~ +int +20047 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20047 +~~END~~ + +~~START~~ +int +20047 +~~END~~ + + + +-- Variables +DECLARE @v VARCHAR(50) = 'exact match'; +DECLARE @n NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +DECLARE @v VARCHAR(50) = 'prefix%'; +DECLARE @n NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +DECLARE @v VARCHAR(50) = '%match'; +DECLARE @n NVARCHAR(50) = N'%match'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Expression patterns +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS concat_n FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match'; +SELECT COUNT(*) AS fn_concat FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS upper_fn FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS lower_fn FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Multiple conditions +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' AND Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' OR Col LIKE 'test%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%'; +GO +~~START~~ +int +8 +~~END~~ + +~~START~~ +int +8 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' AND Col LIKE '%abc'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- NVARCHAR column +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +4 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20036 +~~END~~ + +~~START~~ +int +20036 +~~END~~ + + + +-- CHAR column +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20043 +~~END~~ + +~~START~~ +int +20043 +~~END~~ + + + +-- NVARCHAR collation tables +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +4 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + + +-- CHAR collation tables +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Cross-collation COLLATE clause +SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS ci_as_cs_collate FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cs_as_ci_collate FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS ci_as_ai_collate FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +6 +~~END~~ + + + +-- CHAR(N) / NCHAR(N) Pattern Tests +-- CHAR pattern exact match — should NOT match (trailing spaces) +SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern same length — should match (no padding) +SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +GO +~~START~~ +int +3 +~~END~~ + + +-- Compare: CHAR(11) should match, CHAR(20) should NOT +SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with wildcard at end — should still work +SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with large padding +SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR(1) pattern +SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)); +GO +~~START~~ +int +2 +~~END~~ + + +-- CHAR(10) with single char — padded with 9 spaces +SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR(1) with wildcard +SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)); +GO +~~START~~ +int +20048 +~~END~~ + + +-- CHAR(10) with wildcard — becomes '% ' +SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)); +GO +~~START~~ +int +0 +~~END~~ + + +-- NOT LIKE with CHAR pattern +SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +20048 +~~END~~ + + +-- NVARCHAR column with CHAR pattern +SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR column with CHAR pattern (same length as column) +SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + + +-- CHAR column with CHAR pattern (different length) +SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +3 +~~END~~ + + +-- CHAR pattern with leading wildcard +SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with middle wildcard +SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- NCHAR patterns +SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with CONVERT +SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match'); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%'); +GO +~~START~~ +int +0 +~~END~~ + + +-- Nested CHAR casts +SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern across collations +SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + + +-- Views +SELECT COUNT(*) AS vw_exact_varchar FROM BABEL_5966_vw_like_exact; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_varchar FROM BABEL_5966_vw_like_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_suffix_varchar FROM BABEL_5966_vw_like_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_contains_varchar FROM BABEL_5966_vw_like_contains; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_single_char_varchar FROM BABEL_5966_vw_like_single_char; +GO +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS vw_not_like FROM BABEL_5966_vw_not_like; +GO +~~START~~ +int +48 +~~END~~ + + +SELECT COUNT(*) AS vw_not_like_exact FROM BABEL_5966_vw_not_like_exact; +GO +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS vw_exact_nvarchar FROM BABEL_5966_vw_like_nvar_exact; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_nvarchar FROM BABEL_5966_vw_like_nvar_prefix; +GO +~~START~~ +int +4 +~~END~~ + + +SELECT COUNT(*) AS vw_suffix_nvarchar FROM BABEL_5966_vw_like_nvar_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_exact_char FROM BABEL_5966_vw_like_char_exact; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_char FROM BABEL_5966_vw_like_char_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_suffix_char FROM BABEL_5966_vw_like_char_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_or FROM BABEL_5966_vw_like_or; +GO +~~START~~ +int +8 +~~END~~ + + +SELECT COUNT(*) AS vw_and FROM BABEL_5966_vw_like_and; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_mixed FROM BABEL_5966_vw_like_and; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_escape_pct FROM BABEL_5966_vw_like_escape_pct; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_escape_underscore FROM BABEL_5966_vw_like_escape_underscore; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_unicode FROM BABEL_5966_vw_like_unicode; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_unicode_prefix FROM BABEL_5966_vw_like_unicode_prefix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cast_varchar FROM BABEL_5966_vw_like_cast_varchar; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cast_nvarchar FROM BABEL_5966_vw_like_cast_nvarchar; +GO +~~START~~ +int +5 +~~END~~ + + +-- CHAR(20) pattern: should return 0 (trailing spaces, no match) +SELECT COUNT(*) AS vw_cast_char FROM BABEL_5966_vw_like_cast_char; +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_as FROM BABEL_5966_vw_like_ci_as; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_as FROM BABEL_5966_vw_like_cs_as; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_ai FROM BABEL_5966_vw_like_ci_ai; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_ai FROM BABEL_5966_vw_like_cs_ai; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_as_prefix FROM BABEL_5966_vw_like_ci_as_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_as_prefix FROM BABEL_5966_vw_like_cs_as_prefix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_ai_prefix FROM BABEL_5966_vw_like_ci_ai_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_ai_prefix FROM BABEL_5966_vw_like_cs_ai_prefix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_nested FROM BABEL_5966_vw_like_nested; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_with_id FROM BABEL_5966_vw_like_with_id; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_filter FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_nvar_filter FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS vw_join FROM BABEL_5966_vw_like_prefix v +JOIN BABEL_5966_vw_like_nvar_prefix n ON v.Id = n.Id; +GO +~~START~~ +int +4 +~~END~~ + + + +-- Procedures +EXEC BABEL_5966_sp_like_exact_const; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_prefix_const; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_suffix_const; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%'; +GO +~~START~~ +int +20048 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param NULL; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param ''; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz'; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%data%'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'café'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'caf%'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'zzz%'; +GO +~~START~~ +int +48 +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'prefix%'; +GO +~~START~~ +int +20043 +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'100!%done', '!'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'under!_score', '!'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'prefix'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'test'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'exact'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'zzz'; +GO +~~START~~ +int +20000 +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT; +SELECT @result AS output_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT; +SELECT @result AS output_exact; +GO +~~START~~ +int +3 +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT; +SELECT @result AS output_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'PREFIX%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'resume'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +6 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'prefix%'; +GO +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'resume'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%'; +GO +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +8 +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'prefix%', 3; +GO +~~START~~ +varchar +prefix_abc +PREFIX_ABC +Prefix_Abc +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'zzz%', 5; +GO +~~START~~ +varchar +zzz_filler_1 +zzz_filler_10 +zzz_filler_100 +zzz_filler_1000 +zzz_filler_10000 +~~END~~ + + +-- Repeated execution +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +EXEC BABEL_5966_sp_like_varchar_param '%match'; +EXEC BABEL_5966_sp_like_varchar_param 'test%'; +EXEC BABEL_5966_sp_like_varchar_param 'a%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +9 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'test%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'a%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +9 +~~END~~ + + + +-- sp_executesql +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'%match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'prefix%'; +GO +~~START~~ +int +4 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = NULL; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'EXACT MATCH'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'resume'; +GO +~~START~~ +int +6 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'resume'; +GO +~~START~~ +int +2 +~~END~~ + + + + +-- CHECK Constraints +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('valid_data'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('valid'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('invalid_data'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_prefix" violates check constraint "babel_5966_testlikecheck_prefix_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_nprefix (Col) VALUES ('valid_data'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_nprefix (Col) VALUES ('invalid_data'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_nprefix" violates check constraint "babel_5966_testlikecheck_nprefix_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('good_data'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('ok_data'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('bad_data'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_not_like" violates check constraint "babel_5966_testlikecheck_not_like_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('100%done'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('100%almost'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('200%done'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_escape" violates check constraint "babel_5966_testlikecheck_escape_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('is_valid'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('also_valid'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('invalid'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_prefix; +GO +~~START~~ +int#!#varchar +1#!#valid_data +2#!#valid +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_nprefix; +GO +~~START~~ +int#!#varchar +1#!#valid_data +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_not_like; +GO +~~START~~ +int#!#varchar +1#!#good_data +2#!#ok_data +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_escape; +GO +~~START~~ +int#!#varchar +1#!#100%done +2#!#100%almost +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_suffix; +GO +~~START~~ +int#!#varchar +1#!#is_valid +2#!#also_valid +3#!#invalid +~~END~~ + + + +-- UPDATE / DELETE +UPDATE BABEL_5966_TestLikeCollation_CI_AS SET Col = Col WHERE Col LIKE N'prefix%'; +SELECT @@ROWCOUNT AS update_prefix; +GO +~~ROW COUNT: 5~~ + +~~START~~ +int +5 +~~END~~ + + +UPDATE BABEL_5966_TestLikeCollation_CI_AS SET Col = Col WHERE Col NOT LIKE N'zzz%'; +SELECT @@ROWCOUNT AS update_not_zzz; +GO +~~ROW COUNT: 48~~ + +~~START~~ +int +48 +~~END~~ + + +DELETE FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_xyz_abc%'; +SELECT @@ROWCOUNT AS delete_none; +GO +~~START~~ +int +0 +~~END~~ + + +exec sp_babelfish_configure 'explain_costs', 'off'; +GO + +SELECT set_config('enable_bitmapscan', 'on', false); +GO +~~START~~ +text +on +~~END~~ + diff --git a/test/JDBC/expected/parallel_query/babel_collection.out b/test/JDBC/expected/parallel_query/babel_collection.out index 71ef8aef87d..7578bb68942 100644 --- a/test/JDBC/expected/parallel_query/babel_collection.out +++ b/test/JDBC/expected/parallel_query/babel_collection.out @@ -345,10 +345,10 @@ GO ~~START~~ text Query Text: select c1 from testing4 where c1 NOT LIKE 'jones' -Gather (cost=11.56..24.71 rows=647 width=32) +Gather (cost=11.56..24.71 rows=650 width=32) Workers Planned: 3 - -> Parallel Bitmap Heap Scan on testing4 (cost=11.56..24.71 rows=209 width=32) - Filter: ((c1 <> 'jones'::"varchar") AND ((c1)::text !~~* 'jones'::text COLLATE bbf_unicode_cp1_cs_as)) + -> Parallel Bitmap Heap Scan on testing4 (cost=11.56..24.71 rows=210 width=32) + Filter: ((c1 <> 'jones'::"varchar") OR ((c1)::text !~~* 'jones'::text COLLATE bbf_unicode_cp1_cs_as)) -> Bitmap Index Scan on c1_idxtesting49a168d73f3ba5aacdfd495b931b8d187 (cost=0.00..11.40 rows=650 width=0) ~~END~~ diff --git a/test/JDBC/expected/parallel_query/like_op_index_scan-vu-verify.out b/test/JDBC/expected/parallel_query/like_op_index_scan-vu-verify.out new file mode 100644 index 00000000000..e8147e64108 --- /dev/null +++ b/test/JDBC/expected/parallel_query/like_op_index_scan-vu-verify.out @@ -0,0 +1,13192 @@ +-- psql +ANALYZE master_dbo.babel_5966_testlikecollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikecollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikecollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikecollation_cs_ai; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_cs_ai; +ANALYZE master_dbo.babel_5966_testlikecharcollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikecharcollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikecharcollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikecharcollation_cs_ai; +GO + +-- tsql +SELECT set_config('enable_bitmapscan', 'off', false); +GO +~~START~~ +text +off +~~END~~ + + +exec sp_babelfish_configure 'explain_costs', 'off'; +GO + +SET babelfish_showplan_all ON; +GO + + +-- Plain literal (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 118.958 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- Plain literal (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.103 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + + +-- Plain literal (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + + +-- N-prefix literal (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.245 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%abc'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%abc' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%abc'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a'::"varchar") + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- N-prefix literal (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.107 ms +~~END~~ + + + +-- N-prefix literal (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + + +-- N-prefix with no extractable prefix +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.102 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%else'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%else' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%else'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%else'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%else' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%else'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%a%b%c%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%a%b%c%' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%a%b%c%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_xact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_xact match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '_xact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.105 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_refix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_refix%' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '_refix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'___' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + + +-- CAST/CONVERT of constants (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 13.838 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.275 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.490 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.086 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.218 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + + +-- CONVERT (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.037 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.119 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'%match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'%match') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + + +-- CAST/CONVERT (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.157 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.276 ms +~~END~~ + + + +-- CAST/CONVERT (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.130 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + + +-- TRY_CAST (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 5.335 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.155 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('%match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('%match' AS NVARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + + +-- TRY_CAST (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.136 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.134 ms +~~END~~ + + + +-- TRY_CAST (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS NVARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + + +-- TRY_CAST nested +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(TRY_CAST(N'exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(TRY_CAST(N'exact match' AS NVARCHAR(50)) AS VARCHAR(50)) +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.314 ms +~~END~~ + + + +-- TRY_CONVERT (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.148 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.121 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'%match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'%match') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + + +-- TRY_CONVERT (NVARCHAR/CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.129 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.132 ms +~~END~~ + + + +-- TRY_CAST/TRY_CONVERT non-const (col ref) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(Col AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(Col AS VARCHAR(50)) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_try_cast_to_varchar('character varying(50)'::text COLLATE "default", (col)::text))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.345 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), Col); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), Col) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", (col)::text, true, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.548 ms +~~END~~ + + + +-- TRY_CAST/TRY_CONVERT with parameter +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(@p AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST("@p" AS VARCHAR(50)) +Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.567 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), @p); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'prefix%' + Query Text: SELECT N'prefix%' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), "@p") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, true, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.664 ms +~~END~~ + + + +-- TRY_CAST with invalid conversion (returns NULL) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_try_cast_floor_int('not a number'::text COLLATE "default"))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 5.076 ms +~~END~~ + + + +-- ISNULL / COALESCE / NULLIF +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback') +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.156 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'prefix%', 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'prefix%', 'fallback') +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match') +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.160 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%') +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback') +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.951 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%') +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, NULL, N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, NULL, N'exact match') +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(Col, 'fallback'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(Col, 'fallback') +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (COALESCE(col, 'fallback'::"varchar"))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.524 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(@p, 'fallback'); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL("@p", 'fallback') +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'fallback'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.227 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = NULL; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(@p, N'prefix%'); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT NULL + Query Text: SELECT NULL + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE("@p", N'prefix%') +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.168 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else') +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.950 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'prefix%', 'something else'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'prefix%', 'something else') +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.279 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match') +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + + +-- Cross-datatype combinations (const patterns) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.100 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match '::bpchar) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.134 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + + +-- NOT LIKE variants (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar") OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.562 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar") OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'prefix%' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'prefix'::"varchar") OR (col >= 'prefix?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)) +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar") OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + + +-- NOT LIKE (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col <> 'exact match'::nvarchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col <> 'exact match'::nvarchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'prefix%' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: (((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'prefix'::nvarchar) OR (col >= 'prefix?'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)) +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col <> 'exact match'::nvarchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'%match' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text !~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + + +-- NOT LIKE (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'prefix%' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: (((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'prefix'::bpchar) OR (col >= 'prefix?'::bpchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)) +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.114 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'%match' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text !~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + + +-- Non-const patterns +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(Col AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(Col AS CHAR(50)) +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((col)::bpchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.586 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE Col +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(Col, '%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(Col, '%') +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (concat(VARIADIC ARRAY[col, '%'::"varchar"]))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.888 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE REPLACE(Col, '_', '%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE REPLACE(Col, '_', '%') +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (replace(col, '_'::"varchar", '%'::"varchar"))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.066 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE SUBSTRING(Col, 1, 3) + '%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE SUBSTRING(Col, 1, 3) + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(("substring"(col, 1, 3))::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 15.601 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LEFT(Col, 5) + '%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LEFT(Col, 5) + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(("left"(col, 5))::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.969 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (Col + '%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (Col + '%') +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper((col)::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 9.380 ms +~~END~~ + + + +-- Non-const with CONVERT +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", (col)::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.122 ms +~~END~~ + + + +-- NULL handling +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.566 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.154 ms +~~END~~ + + + +-- Special characters and ESCAPE (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix___' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.102 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.209 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.101 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'!%something' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'!%something' ESCAPE '!' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '?%something'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'abc!%%' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'abc!%%' ESCAPE '!' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'abc?%%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'back\slash'::"varchar") + Filter: ((col)::text ~~* 'back\slash'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.102 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'single''quote'::"varchar") + Filter: ((col)::text ~~* 'single''quote'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'[a-z]%' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '[a-z]%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + + +-- ESCAPE (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix___' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'back\slash' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'back\slash'::nvarchar) + Filter: ((col)::text ~~* 'back\slash'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'single''quote' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'single''quote'::nvarchar) + Filter: ((col)::text ~~* 'single''quote'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'[a-z]%' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '[a-z]%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- ESCAPE (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix___' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix___'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'back\slash' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'back\slash'::bpchar) + Filter: ((col)::text ~~* 'back\slash'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'single''quote' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'single''quote'::bpchar) + Filter: ((col)::text ~~* 'single''quote'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'[a-z]%' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '[a-z]%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.128 ms +~~END~~ + + + +-- Unicode and accented characters +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'café'::"varchar") + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'caf'::"varchar") AND (col < 'caf?'::"varchar")) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'rés%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'rés'::"varchar") AND (col < 'rés?'::"varchar")) + Filter: ((col)::text ~~* 'rés%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'résumé'::nvarchar) + Filter: ((col)::text ~~* 'résumé'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'straße' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'straße'::nvarchar) + Filter: ((col)::text ~~* 'straße'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.102 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'caf%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'caf'::nvarchar) AND (col < 'caf?'::nvarchar)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'rés'::nvarchar) AND (col < 'rés?'::nvarchar)) + Filter: ((col)::text ~~* 'rés%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'café'::bpchar) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'caf%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'caf'::bpchar) AND (col < 'caf?'::bpchar)) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'résumé' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'résumé'::bpchar) + Filter: ((col)::text ~~* 'résumé'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'straße' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'straße'::bpchar) + Filter: ((col)::text ~~* 'straße'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'rés%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'rés'::bpchar) AND (col < 'rés?'::bpchar)) + Filter: ((col)::text ~~* 'rés%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + + +-- Boundary cases (VARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = ''::"varchar") + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.099 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a'::"varchar") + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.106 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces ' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = ' spaces '::"varchar") + Filter: ((col)::text ~~* ' spaces '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* ' lead%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= ' lead'::"varchar") AND (col < ' lead?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing ' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'trailing '::"varchar") + Filter: ((col)::text ~~* 'trailing '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'nonexistent'::"varchar") AND (col < 'nonexistent?'::"varchar")) + Filter: ((col)::text ~~* 'nonexistent_value_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'zzz%' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'zzz'::"varchar") AND (col < 'zzz?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- Boundary cases (NVARCHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = ''::nvarchar) + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'a' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'a'::nvarchar) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'nonexistent'::nvarchar) AND (col < 'nonexistent?'::nvarchar)) + Filter: ((col)::text ~~* 'nonexistent_value_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'zzz%' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: (((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'zzz'::nvarchar) AND (col < 'zzz?'::nvarchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- Boundary cases (CHAR CI_AS) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = ''::bpchar) + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'a' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'a'::bpchar) + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'_' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.106 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' spaces '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' spaces ' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = ' spaces '::bpchar) + Filter: ((col)::text ~~* ' spaces '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' lead%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' lead%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= ' lead'::bpchar) AND (col < ' lead?'::bpchar)) + Filter: ((col)::text ~~* ' lead%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'trailing '; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'trailing ' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'trailing '::bpchar) + Filter: ((col)::text ~~* 'trailing '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'nonexistent'::bpchar) AND (col < 'nonexistent?'::bpchar)) + Filter: ((col)::text ~~* 'nonexistent_value_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'zzz%' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: (((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'zzz'::bpchar) AND (col < 'zzz?'::bpchar)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- Variables and parameters +DECLARE @pattern VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT 'exact match' + Query Text: SELECT 'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.810 ms +~~END~~ + + +DECLARE @pattern NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT N'prefix%' + Query Text: SELECT N'prefix%' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.154 ms +~~END~~ + + +DECLARE @pattern VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@pattern AS NVARCHAR(50)); +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT 'exact match' + Query Text: SELECT 'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@pattern" AS NVARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.177 ms +~~END~~ + + +DECLARE @pattern NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @pattern); +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), "@pattern") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.166 ms +~~END~~ + + +DECLARE @pattern VARCHAR(50) = 'test'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern + '%'; +GO +~~START~~ +text +Query Text: ASSIGN @pattern = SELECT 'test' + Query Text: SELECT 'test' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(NULL::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.215 ms +~~END~~ + + + +-- Expression patterns — Constant foldable +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match' +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match') +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.123 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match') +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'EXACT MATCH'::"varchar") + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 9.901 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH') +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.155 ms +~~END~~ + + + +-- Function on LHS — Blocks index +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE UPPER(Col) LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE UPPER(Col) LIKE N'EXACT MATCH' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((upper(col))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (upper(col) = 'EXACT MATCH'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 8.173 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LOWER(Col) LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LOWER(Col) LIKE N'prefix%' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((lower(col))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (lower(col) >= 'prefix'::"varchar") AND (lower(col) < 'prefix?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LEFT(Col, 10) LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LEFT(Col, 10) LIKE N'prefix%' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((("left"(col, 10))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ("left"(col, 10) >= 'prefix'::"varchar") AND ("left"(col, 10) < 'prefix?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.432 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE RTRIM(Col) LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE RTRIM(Col) LIKE N'exact match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((rtrim(col))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (rtrim(col) = 'exact match'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.176 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE REPLACE(Col, ' ', '') LIKE N'exactmatch'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE REPLACE(Col, ' ', '') LIKE N'exactmatch' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((replace(col, ' '::"varchar", ''::"varchar"))::text ~~* 'exactmatch'::text COLLATE bbf_unicode_cp1_cs_as) AND (replace(col, ' '::"varchar", ''::"varchar") = 'exactmatch'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 1.951 ms +~~END~~ + + + +-- Case sensitivity +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'EXACT MATCH'::"varchar") + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'PREFIX'::"varchar") AND (col < 'PREFIX?'::"varchar")) + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.101 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'aAbBcCdDeE'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'aAbBcCdDeE' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'aAbBcCdDeE'::"varchar") + Filter: ((col)::text ~~* 'aAbBcCdDeE'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'EXACT MATCH'::nvarchar) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'PREFIX%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'PREFIX'::nvarchar) AND (col < 'PREFIX?'::nvarchar)) + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'EXACT MATCH'::bpchar) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'PREFIX%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'PREFIX'::bpchar) AND (col < 'PREFIX?'::bpchar)) + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + + +-- Covering index and scan variations +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.158 ms +~~END~~ + + +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.016 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT CASE WHEN EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%') THEN 1 ELSE 0 END; +GO +~~START~~ +text +Query Text: SELECT CASE WHEN EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%') THEN 1 ELSE 0 END +Result + InitPlan 1 + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.714 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'straße' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'straße'::"varchar") + Filter: ((col)::text ~~* 'straße'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.102 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + + +-- Multiple LIKE conditions +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) OR (((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'test'::"varchar") AND (col < 'test?'::"varchar"))) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.156 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* '%abc'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.164 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id > 5; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id > 5 +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (id > 5)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.570 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id BETWEEN 1 AND 10; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id BETWEEN 1 AND 10 +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Scan using babel_5966_testlikecollation_ci_as_pkey on babel_5966_testlikecollation_ci_as + Index Cond: ((id >= 1) AND (id <= 10)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.186 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col IS NOT NULL; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col IS NOT NULL +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar") AND (col IS NOT NULL)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.444 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id IN (1, 2, 3, 4, 5); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id IN (1, 2, 3, 4, 5) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (id = ANY ('{1,2,3,4,5}'::integer[]))) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.579 ms +~~END~~ + + + +-- LIKE in different query contexts +SELECT COUNT(*) +FROM BABEL_5966_TestLikeCollation_CI_AS t1 +JOIN BABEL_5966_TestLikeCollation_CI_AS t2 ON t1.Id = t2.Id +WHERE t1.Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) +FROM BABEL_5966_TestLikeCollation_CI_AS t1 +JOIN BABEL_5966_TestLikeCollation_CI_AS t2 ON t1.Id = t2.Id +WHERE t1.Col LIKE N'prefix%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as t2 + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 19.472 ms +~~END~~ + + +SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE N'pre%'; +GO +~~START~~ +text +Query Text: SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE N'pre%' +GroupAggregate + Group Key: ("left"(col, 3)) + -> Sort + Sort Key: ("left"(col, 3)) + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((("left"(col, 3))::text ~~* 'pre%'::text COLLATE bbf_unicode_cp1_cs_as) AND ("left"(col, 3) >= 'pre'::"varchar") AND ("left"(col, 3) < 'pre?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 36.060 ms +~~END~~ + + +SELECT COUNT(CASE WHEN Col LIKE N'prefix%' THEN 1 END) FROM BABEL_5966_TestLikeCollation_CI_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(CASE WHEN Col LIKE N'prefix%' THEN 1 END) FROM BABEL_5966_TestLikeCollation_CI_AS +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 26.930 ms +~~END~~ + + +SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +Gather + Workers Planned: 1 + Single Copy: true + -> Limit + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.684 ms +~~END~~ + + +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' ORDER BY Col; +GO +~~START~~ +text +Query Text: SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' ORDER BY Col +Gather + Workers Planned: 1 + Single Copy: true + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 6.740 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id IN ( + SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id IN ( + SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 6.399 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS t1 +WHERE EXISTS ( + SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 + WHERE t2.Col LIKE N'prefix%' AND t2.Id = t1.Id +); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS t1 +WHERE EXISTS ( + SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 + WHERE t2.Col LIKE N'prefix%' AND t2.Id = t1.Id +) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as t2 + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 15.556 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1) +Finalize Aggregate + InitPlan 1 + -> Limit + -> Index Scan using babel_5966_testlikecollation_ci_as_pkey on babel_5966_testlikecollation_ci_as babel_5966_testlikecollation_ci_as_1 + Index Cond: (id = 1) + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((InitPlan 1).col1)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 11.976 ms +~~END~~ + + + +-- CI_AS collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.105 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.101 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'EXACT MATCH'::"varchar") + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'resume'::"varchar") + Filter: ((col)::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'café'::"varchar") + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'caf'::"varchar") AND (col < 'caf?'::"varchar")) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.130 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar") OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.109 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- CS_AS collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'EXACT MATCH'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'resume'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'café'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'caf%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'caf'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'caf?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col <> 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) OR ((col)::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'%match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE Col +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + + +-- CI_AI collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.104 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'résumé' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.097 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'res%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'res%' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'res%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'res'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'res?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'naive'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'naive'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) OR ((remove_accents_internal((col)::text))::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'%match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE Col +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + + +-- CS_AI collation (VARCHAR) +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'RESUME'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'RESUME'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'res%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'res%' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'res%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'res'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'res?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) OR ((remove_accents_internal((col)::text))::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'%match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE Col +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.086 ms +~~END~~ + + + +-- Cross-collation via COLLATE clause +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 5.924 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.106 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.112 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CS_AI; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CS_AI +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.100 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.119 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS) +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.155 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE (N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AS); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE (N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AS) +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.101 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CS_AS +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.096 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AI +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_as + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + + +-- NVARCHAR columns with all collations +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_cs_asbabel_8042afedf3be7883adbc9452d1114ad8 on babel_5966_testlikenvarcollation_cs_as + Index Cond: (col = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'prefix%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_cs_asbabel_8042afedf3be7883adbc9452d1114ad8 on babel_5966_testlikenvarcollation_cs_as + Index Cond: ((col >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + + +-- CHAR columns with all collations +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'EXACT MATCH'::bpchar) + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'resume' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'resume'::bpchar) + Filter: ((col)::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'café'::bpchar) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col <> 'exact match'::bpchar) OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: ((col >= 'prefix'::bpchar COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::bpchar COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'EXACT MATCH' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'EXACT MATCH'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'resume' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'resume'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col NOT LIKE N'exact match' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col <> 'exact match'::bpchar COLLATE bbf_unicode_cp1_cs_as) OR ((col)::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'%match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE Col +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ (col)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'resume' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'résumé' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'cafe'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'cafe' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'naive'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'naive' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'naive'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'naive'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col NOT LIKE N'exact match' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) OR ((remove_accents_internal((col)::text))::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'%match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE Col +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.087 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'EXACT MATCH' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'EXACT MATCH'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'resume' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'résumé' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'resume'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'RESUME' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'RESUME'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'RESUME'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.088 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)) +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col NOT LIKE N'exact match' +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text) <> 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) OR ((remove_accents_internal((col)::text))::text !~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'%match'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'%match' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.089 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE Col; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE Col +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ (remove_accents_internal((col)::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.090 ms +~~END~~ + + + +-- Cross-datatype with collations +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'café'::"varchar") + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.098 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'café'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'café' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'café' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'café'::nvarchar) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'café' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_cs_asbabel_8042afedf3be7883adbc9452d1114ad8 on babel_5966_testlikenvarcollation_cs_as + Index Cond: (col = 'café'::nvarchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'café' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'café' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.122 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'café'::bpchar) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'café' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'café' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'café' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'café'::bpchar) + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.093 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'café' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_cs_asbabel_627e6816d6b7394d1da5c73de0abca87 on babel_5966_testlikecharcollation_cs_as + Index Cond: (col = 'café'::bpchar COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.091 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'café' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'café'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'café' +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'cafe'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.092 ms +~~END~~ + + + +-- Safety tests for evaluate_expr +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", (col)::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.118 ms +~~END~~ + + +DECLARE @p VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @p); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT 'exact match' + Query Text: SELECT 'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), "@p") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.179 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @p); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'prefix%' + Query Text: SELECT N'prefix%' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), "@p") +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", NULL::text, false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.167 ms +~~END~~ + + +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@p AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT N'exact match' + Query Text: SELECT N'exact match' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@p" AS VARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.163 ms +~~END~~ + + +DECLARE @p VARCHAR(50) = 'test'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p + '%'; +GO +~~START~~ +text +Query Text: ASSIGN @p = SELECT 'test' + Query Text: SELECT 'test' + -> Result +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p" + '%' +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper(NULL::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.152 ms +~~END~~ + + +-- Volatile functions +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), NEWID()); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), NEWID()) +Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((babelfish_conv_helper_to_varchar('character varying(50)'::text COLLATE "default", newid(), false, '-1'::numeric(1,0), false))::"varchar"(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 3.186 ms +~~END~~ + + +-- Subquery pattern +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1) +Finalize Aggregate + InitPlan 1 + -> Limit + -> Index Scan using babel_5966_testlikecollation_ci_as_pkey on babel_5966_testlikecollation_ci_as babel_5966_testlikecollation_ci_as_1 + Index Cond: (id = 1) + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ((InitPlan 1).col1)::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.152 ms +~~END~~ + + +SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE 'pre%'; +GO +~~START~~ +text +Query Text: SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE 'pre%' +GroupAggregate + Group Key: ("left"(col, 3)) + -> Sort + Sort Key: ("left"(col, 3)) + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((("left"(col, 3))::text ~~* 'pre%'::text COLLATE bbf_unicode_cp1_cs_as) AND ("left"(col, 3) >= 'pre'::"varchar") AND ("left"(col, 3) < 'pre?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.189 ms +~~END~~ + + + +-- CHAR(N) / NCHAR(N) Pattern Tests +SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.174 ms +~~END~~ + + +SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.138 ms +~~END~~ + + +SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.187 ms +~~END~~ + + +SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.122 ms +~~END~~ + + +SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a '::"varchar") + Filter: ((col)::text ~~* 'a '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.120 ms +~~END~~ + + +SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a'::"varchar") + Filter: ((col)::text ~~* 'a'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'a '::"varchar") + Filter: ((col)::text ~~* 'a '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.116 ms +~~END~~ + + +SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)) +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.113 ms +~~END~~ + + +SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)) +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.111 ms +~~END~~ + + +SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)) +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match '::"varchar") OR ((col)::text !~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.235 ms +~~END~~ + + +SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match '::nvarchar) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.139 ms +~~END~~ + + +SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match '::bpchar) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match '::bpchar) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)) +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + +SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'pre'::"varchar") AND (col < 'pre?'::"varchar")) + Filter: ((col)::text ~~* 'pre%abc '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.138 ms +~~END~~ + + +SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.132 ms +~~END~~ + + +SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match '::nvarchar) + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.125 ms +~~END~~ + + +SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.119 ms +~~END~~ + + +SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.225 ms +~~END~~ + + +SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%'); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%') +Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix% '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.119 ms +~~END~~ + + +SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.182 ms +~~END~~ + + +SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.213 ms +~~END~~ + + +SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.124 ms +~~END~~ + + +SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match '::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.119 ms +~~END~~ + + +SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match '::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +text +Query Text: SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)) +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match '::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.128 ms +~~END~~ + + + +-- Views +SELECT COUNT(*) FROM BABEL_5966_vw_like_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_exact +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.076 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_suffix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_suffix +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_contains; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_contains +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_single_char; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_single_char +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '_'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_not_like; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_not_like +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text !~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) OR (col < 'zzz'::"varchar") OR (col >= 'zzz?'::"varchar")) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_not_like_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_not_like_exact +Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col <> 'exact match'::"varchar") OR ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_exact +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: (col = 'exact match'::nvarchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.070 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_suffix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_suffix +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.082 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_exact; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_char_exact +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: (col = 'exact match'::bpchar) + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_char_prefix +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_char_ci_asbabel_caaf19961bec936b355698e98cbb4c86 on babel_5966_testlikecharcollation_ci_as + Index Cond: ((col >= 'prefix'::bpchar) AND (col < 'prefix?'::bpchar)) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_suffix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_char_suffix +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_or; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_or +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) OR (((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as) AND (col >= 'test'::"varchar") AND (col < 'test?'::"varchar"))) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_and; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_and +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* '%abc'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_pct; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_pct +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_underscore; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_underscore +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'café'::"varchar") + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode_prefix +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'caf'::"varchar") AND (col < 'caf?'::"varchar")) + Filter: ((col)::text ~~* 'caf%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_varchar; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_varchar +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.070 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_nvarchar; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_nvarchar +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_char; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_char +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match '::"varchar") + Filter: ((col)::text ~~* 'exact match '::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: (col = 'exact match'::"varchar" COLLATE bbf_unicode_cp1_cs_as) + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) = 'exact match'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as_prefix +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.067 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as_prefix +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_cs_asbabel_5966_4667a9383e018cc82965269f8a5b6c6f on babel_5966_testlikecollation_cs_as + Index Cond: ((col >= 'prefix'::"varchar" COLLATE bbf_unicode_cp1_cs_as) AND (col < 'prefix?'::"varchar" COLLATE bbf_unicode_cp1_cs_as)) + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai_prefix +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: (((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_ci_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_ci_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.068 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai_prefix; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai_prefix +Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: (((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (remove_accents_internal((col)::text) >= 'prefix'::nvarchar COLLATE bbf_unicode_cp1_cs_ai) AND (remove_accents_internal((col)::text) < 'prefix?'::nvarchar COLLATE bbf_unicode_cp1_cs_ai)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nested; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nested +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar") AND (col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix_a%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_with_id; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_with_id +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND (id > 0)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.069 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar") AND (col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix_a%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.094 ms +~~END~~ + + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +text +Query Text: SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%' +Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_nvar_ci_asbabel_0449e390b20d5cda5f82269af132d5c5 on babel_5966_testlikenvarcollation_ci_as + Index Cond: ((col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar) AND (col >= 'prefix'::nvarchar) AND (col < 'prefix?'::nvarchar)) + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix_a%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.095 ms +~~END~~ + + + +-- Procedures +EXEC BABEL_5966_sp_like_exact_const; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_exact_const + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' + -> Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: (col = 'exact match'::"varchar") + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 7.880 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_prefix_const; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_prefix_const + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' + -> Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Index Cond: ((col >= 'prefix'::"varchar") AND (col < 'prefix?'::"varchar")) + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.110 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_suffix_const; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_suffix_const + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match' + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.108 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.132 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param '%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param '%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.053 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param NULL; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param NULL + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Gather + Workers Planned: 1 + Single Copy: true + -> Aggregate + -> Result + One-Time Filter: false +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.085 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param ''; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param '' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ''::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'nonexistent_xyz'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.115 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%data%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'%data%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%data%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.052 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'café' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.059 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'caf%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'caf%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('caf%'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.053 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('EXACT MATCH'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('PREFIX%'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.053 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'prefix%' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.245 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'exact match' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.059 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'%match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'%match' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_types N'café' + Query Text: SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.059 ms +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'zzz%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_not_like_param N'zzz%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.117 ms +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_not_like_param N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_not_like_param N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text !~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.075 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'100!%done', '!'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_escape N'100!%done', '!' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ESCAPE "@esc" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '100?%done'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.172 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'under!_score', '!'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_escape N'under!_score', '!' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ESCAPE "@esc" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'under?_score'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.064 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'prefix'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'prefix' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('prefix'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.137 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'test'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'test' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('test'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'exact'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'exact' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('exact'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'zzz'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_dynamic 'zzz' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@prefix" + '%' + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* (babelfish_concat_wrapper('zzz'::text, '%'::text))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.059 ms +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT; +SELECT @result AS output_prefix; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT + Query Text: SELECT sys.pltsql_assign_var(1, cast((COUNT(*)) as int)) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT "@result" AS output_prefix +Gather + Workers Planned: 1 + Single Copy: true + -> Result +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.144 ms +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT; +SELECT @result AS output_exact; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT + Query Text: SELECT sys.pltsql_assign_var(1, cast((COUNT(*)) as int)) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT "@result" AS output_exact +Gather + Workers Planned: 1 + Single Copy: true + -> Result +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.144 ms +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT; +SELECT @result AS output_suffix; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT + Query Text: SELECT sys.pltsql_assign_var(1, cast((COUNT(*)) as int)) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: SELECT "@result" AS output_suffix +Gather + Workers Planned: 1 + Single Copy: true + -> Result +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.136 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'exact match' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.266 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'prefix%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'PREFIX%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'PREFIX%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'PREFIX%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.054 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'café' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.060 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'resume'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_all_collations N'resume' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('resume'::nvarchar(50))::text) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_as + Filter: ((col)::text ~~ ('resume'::nvarchar(50))::text) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'exact match' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.270 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.058 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'prefix%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'resume'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvar_collations N'resume' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_as + Filter: ((col)::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_cs_as + Filter: ((col)::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'resume'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikenvarcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'resume'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.055 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'exact match' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.268 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'EXACT MATCH'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.058 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'prefix%' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.056 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'café'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_char_collations N'café' + Query Text: SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_as + Filter: ((col)::text ~~* 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_as + Filter: ((col)::text ~~ 'café'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_ci_ai + Filter: ((remove_accents_internal((col)::text))::text ~~* 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecharcollation_cs_ai + Filter: ((remove_accents_internal((col)::text))::text ~~ 'cafe'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.060 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_with_cast 'exact match' + Query Text: SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS VARCHAR(50)) + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS NVARCHAR(50)) + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.314 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_with_cast 'prefix%' + Query Text: SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS VARCHAR(50)) + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) + Query Text: SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST("@val" AS NVARCHAR(50)) + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.057 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%' + Query Text: SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" AND Col LIKE "@p2" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as)) + Query Text: SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" OR Col LIKE "@p2" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.373 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%' + Query Text: SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" AND Col LIKE "@p2" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as)) + Query Text: SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" OR Col LIKE "@p2" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) OR ((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as)) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.066 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match' + Query Text: SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" AND Col LIKE "@p2" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: (((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) AND ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as)) + Query Text: SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@p1" OR Col LIKE "@p2" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.062 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_subquery N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS + WHERE Id IN (SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern") + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.735 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_subquery N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS + WHERE Id IN (SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern") + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.058 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'prefix%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_exists N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS t1 + WHERE EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 WHERE t2.Col LIKE "@pattern" AND t2.Id = t1.Id) + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as t2 + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 2.839 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'exact match'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_exists N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS t1 + WHERE EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 WHERE t2.Col LIKE "@pattern" AND t2.Id = t1.Id) + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as t2 + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.060 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'prefix%', 3; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_top N'prefix%', 3 + Query Text: SELECT TOP("@top") Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ORDER BY Col + -> Limit + -> Gather Merge + Workers Planned: 4 + -> Sort + Sort Key: col NULLS FIRST + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 1.106 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'zzz%', 5; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_top N'zzz%', 5 + Query Text: SELECT TOP("@top") Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" ORDER BY Col + -> Gather + Workers Planned: 1 + Single Copy: true + -> Limit + -> Index Only Scan using babel_5966_idx_ci_asbabel_5966_7cc87a6b98e338dc94efc01ca6fb42c5 on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'zzz%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.064 ms +~~END~~ + + +-- Repeated execution +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +EXEC BABEL_5966_sp_like_varchar_param '%match'; +EXEC BABEL_5966_sp_like_varchar_param 'test%'; +EXEC BABEL_5966_sp_like_varchar_param 'a%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'exact match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'prefix%'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param '%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* '%match'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'test%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'test%'::text COLLATE bbf_unicode_cp1_cs_as) +Query Text: EXEC BABEL_5966_sp_like_varchar_param 'a%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Aggregate + -> Gather + Workers Planned: 4 + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* 'a%'::text COLLATE bbf_unicode_cp1_cs_as) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.206 ms +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'test%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'a%'; +GO +~~START~~ +text +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'exact match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('exact match'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('prefix%'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'%match' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('%match'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'test%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('test%'::nvarchar(50))::text) +Query Text: EXEC BABEL_5966_sp_like_nvarchar_param N'a%' + Query Text: SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE "@pattern" + -> Finalize Aggregate + -> Gather + Workers Planned: 4 + -> Partial Aggregate + -> Parallel Seq Scan on babel_5966_testlikecollation_ci_as + Filter: ((col)::text ~~* ('a%'::nvarchar(50))::text) +~~END~~ + +~~START~~ +text +Babelfish T-SQL Batch Parsing Time: 0.141 ms +~~END~~ + + +SET babelfish_showplan_all OFF; +GO + + +-- Result correctness +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%data%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + + +-- Cross-type +SELECT COUNT(*) AS varchar_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS char_nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nvarchar_plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS varchar_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS varchar_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS nvarchar_varchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nvarchar_nvarchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS char_varchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS char_nvarchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS varchar_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS varchar_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS varchar_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS nvarchar_varchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nvarchar_nvarchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nvarchar_char FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS char_varchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS char_nvarchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS char_char FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- CAST/CONVERT patterns +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +SELECT COUNT(*) AS cast_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS convert_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match'); +SELECT COUNT(*) AS convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +SELECT COUNT(*) AS nested_cast FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +SELECT COUNT(*) AS triple_cast FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +SELECT COUNT(*) AS convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS try_cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS try_cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS try_convert_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match'); +SELECT COUNT(*) AS try_convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS try_cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +SELECT COUNT(*) AS try_convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +SELECT COUNT(*) AS try_cast FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + +SELECT COUNT(*) AS tc_result FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), N'exact match'); +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +SELECT COUNT(*) AS try_cast FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +GO +~~START~~ +int +5 +~~END~~ + +SELECT COUNT(*) AS try_c FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + + +-- TRY_CAST returning NULL (invalid conversion) +SELECT COUNT(*) AS try_cast_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS isnull_first FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback'); +SELECT COUNT(*) AS isnull_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match'); +SELECT COUNT(*) AS coalesce_first FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback'); +SELECT COUNT(*) AS coalesce_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'exact match'); +SELECT COUNT(*) AS nullif_diff FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS isnull_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%'); +SELECT COUNT(*) AS coalesce_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%'); +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +-- NULLIF returns NULL when args match +SELECT COUNT(*) AS nullif_same FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match'); +GO +~~START~~ +int +0 +~~END~~ + + +-- ISNULL with all NULLs +SELECT COUNT(*) AS isnull_both_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, NULL); +GO +~~START~~ +int +0 +~~END~~ + + + +-- Special characters +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '100!%done' ESCAPE '!'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'under!_score' ESCAPE '!'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'back\slash'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'single''quote'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + + +-- Unicode/accented +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'résumé'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'straße'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'straße'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'naïve'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'naïve'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'caf%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'rés%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + + +-- Case sensitivity +SELECT COUNT(*) AS lower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nlower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nupper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS lower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'PREFIX%'; +SELECT COUNT(*) AS nlower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS nupper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + + +-- NULL handling +SELECT COUNT(*) AS like_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL; +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS not_like_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL; +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS cast_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)); +GO +~~START~~ +int +0 +~~END~~ + + + +-- Boundary cases +SELECT COUNT(*) AS empty_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ''; +SELECT COUNT(*) AS empty_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N''; +GO +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS single_a_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'a'; +SELECT COUNT(*) AS single_a_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS underscore_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '_'; +SELECT COUNT(*) AS underscore_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS pct_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%'; +SELECT COUNT(*) AS pct_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO +~~START~~ +int +20048 +~~END~~ + +~~START~~ +int +20048 +~~END~~ + + +SELECT COUNT(*) AS spaces_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ' spaces '; +SELECT COUNT(*) AS spaces_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces '; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS trailing_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'trailing '; +SELECT COUNT(*) AS trailing_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing '; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS leading_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ' lead%'; +SELECT COUNT(*) AS leading_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS nonexist_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'nonexistent_value_xyz'; +SELECT COUNT(*) AS nonexist_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +0 +~~END~~ + + + +-- Collation CI_AS +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Collation CS_AS +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + + +-- Collation CI_AI +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +6 +~~END~~ + +~~START~~ +int +6 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'cafe'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'naive'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive'; +GO +~~START~~ +int +6 +~~END~~ + +~~START~~ +int +6 +~~END~~ + + + +-- Collation CS_AI +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'résumé'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'RESUME'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + + +-- NOT LIKE with collations +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20047 +~~END~~ + +~~START~~ +int +20047 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20047 +~~END~~ + +~~START~~ +int +20047 +~~END~~ + + + +-- Variables +DECLARE @v VARCHAR(50) = 'exact match'; +DECLARE @n NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +DECLARE @v VARCHAR(50) = 'prefix%'; +DECLARE @n NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +DECLARE @v VARCHAR(50) = '%match'; +DECLARE @n NVARCHAR(50) = N'%match'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Expression patterns +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS concat_n FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match'; +SELECT COUNT(*) AS fn_concat FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS upper_fn FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS lower_fn FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH'); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Multiple conditions +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' AND Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' OR Col LIKE 'test%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%'; +GO +~~START~~ +int +8 +~~END~~ + +~~START~~ +int +8 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' AND Col LIKE '%abc'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- NVARCHAR column +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +4 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20036 +~~END~~ + +~~START~~ +int +20036 +~~END~~ + + + +-- CHAR column +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO +~~START~~ +int +20043 +~~END~~ + +~~START~~ +int +20043 +~~END~~ + + + +-- NVARCHAR collation tables +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +4 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + + +-- CHAR collation tables +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + + +-- Cross-collation COLLATE clause +SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS ci_as_cs_collate FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cs_as_ci_collate FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS ci_as_ai_collate FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +6 +~~END~~ + + + +-- CHAR(N) / NCHAR(N) Pattern Tests +-- CHAR pattern exact match — should NOT match (trailing spaces) +SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern same length — should match (no padding) +SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +GO +~~START~~ +int +3 +~~END~~ + + +-- Compare: CHAR(11) should match, CHAR(20) should NOT +SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with wildcard at end — should still work +SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with large padding +SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR(1) pattern +SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)); +GO +~~START~~ +int +2 +~~END~~ + + +-- CHAR(10) with single char — padded with 9 spaces +SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR(1) with wildcard +SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)); +GO +~~START~~ +int +20048 +~~END~~ + + +-- CHAR(10) with wildcard — becomes '% ' +SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)); +GO +~~START~~ +int +0 +~~END~~ + + +-- NOT LIKE with CHAR pattern +SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +20048 +~~END~~ + + +-- NVARCHAR column with CHAR pattern +SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR column with CHAR pattern (same length as column) +SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO +~~START~~ +int +3 +~~END~~ + + +-- CHAR column with CHAR pattern (different length) +SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +3 +~~END~~ + + +-- CHAR pattern with leading wildcard +SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with middle wildcard +SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- NCHAR patterns +SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern with CONVERT +SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match'); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%'); +GO +~~START~~ +int +0 +~~END~~ + + +-- Nested CHAR casts +SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +-- CHAR pattern across collations +SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO +~~START~~ +int +0 +~~END~~ + + + +-- Views +SELECT COUNT(*) AS vw_exact_varchar FROM BABEL_5966_vw_like_exact; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_varchar FROM BABEL_5966_vw_like_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_suffix_varchar FROM BABEL_5966_vw_like_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_contains_varchar FROM BABEL_5966_vw_like_contains; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_single_char_varchar FROM BABEL_5966_vw_like_single_char; +GO +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS vw_not_like FROM BABEL_5966_vw_not_like; +GO +~~START~~ +int +48 +~~END~~ + + +SELECT COUNT(*) AS vw_not_like_exact FROM BABEL_5966_vw_not_like_exact; +GO +~~START~~ +int +20045 +~~END~~ + + +SELECT COUNT(*) AS vw_exact_nvarchar FROM BABEL_5966_vw_like_nvar_exact; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_nvarchar FROM BABEL_5966_vw_like_nvar_prefix; +GO +~~START~~ +int +4 +~~END~~ + + +SELECT COUNT(*) AS vw_suffix_nvarchar FROM BABEL_5966_vw_like_nvar_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_exact_char FROM BABEL_5966_vw_like_char_exact; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_char FROM BABEL_5966_vw_like_char_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_suffix_char FROM BABEL_5966_vw_like_char_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_or FROM BABEL_5966_vw_like_or; +GO +~~START~~ +int +8 +~~END~~ + + +SELECT COUNT(*) AS vw_and FROM BABEL_5966_vw_like_and; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_mixed FROM BABEL_5966_vw_like_and; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_escape_pct FROM BABEL_5966_vw_like_escape_pct; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_escape_underscore FROM BABEL_5966_vw_like_escape_underscore; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_unicode FROM BABEL_5966_vw_like_unicode; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_unicode_prefix FROM BABEL_5966_vw_like_unicode_prefix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cast_varchar FROM BABEL_5966_vw_like_cast_varchar; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cast_nvarchar FROM BABEL_5966_vw_like_cast_nvarchar; +GO +~~START~~ +int +5 +~~END~~ + + +-- CHAR(20) pattern: should return 0 (trailing spaces, no match) +SELECT COUNT(*) AS vw_cast_char FROM BABEL_5966_vw_like_cast_char; +GO +~~START~~ +int +0 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_as FROM BABEL_5966_vw_like_ci_as; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_as FROM BABEL_5966_vw_like_cs_as; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_ai FROM BABEL_5966_vw_like_ci_ai; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_ai FROM BABEL_5966_vw_like_cs_ai; +GO +~~START~~ +int +1 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_as_prefix FROM BABEL_5966_vw_like_ci_as_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_as_prefix FROM BABEL_5966_vw_like_cs_as_prefix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_ci_ai_prefix FROM BABEL_5966_vw_like_ci_ai_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_cs_ai_prefix FROM BABEL_5966_vw_like_cs_ai_prefix; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_nested FROM BABEL_5966_vw_like_nested; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_with_id FROM BABEL_5966_vw_like_with_id; +GO +~~START~~ +int +5 +~~END~~ + + +SELECT COUNT(*) AS vw_prefix_filter FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +int +3 +~~END~~ + + +SELECT COUNT(*) AS vw_nvar_filter FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%'; +GO +~~START~~ +int +2 +~~END~~ + + +SELECT COUNT(*) AS vw_join FROM BABEL_5966_vw_like_prefix v +JOIN BABEL_5966_vw_like_nvar_prefix n ON v.Id = n.Id; +GO +~~START~~ +int +4 +~~END~~ + + + +-- Procedures +EXEC BABEL_5966_sp_like_exact_const; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_prefix_const; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_suffix_const; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param '%'; +GO +~~START~~ +int +20048 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param NULL; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param ''; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz'; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'%data%'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'café'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'caf%'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'%match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_types N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'zzz%'; +GO +~~START~~ +int +48 +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'prefix%'; +GO +~~START~~ +int +20043 +~~END~~ + + +EXEC BABEL_5966_sp_not_like_param N'exact match'; +GO +~~START~~ +int +20045 +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'100!%done', '!'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_escape N'under!_score', '!'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'prefix'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'test'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'exact'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_dynamic 'zzz'; +GO +~~START~~ +int +20000 +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT; +SELECT @result AS output_prefix; +GO +~~START~~ +int +5 +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT; +SELECT @result AS output_exact; +GO +~~START~~ +int +3 +~~END~~ + + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT; +SELECT @result AS output_suffix; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'PREFIX%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_all_collations N'resume'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +6 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'prefix%'; +GO +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvar_collations N'resume'; +GO +~~START~~ +int +2 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +4 +~~END~~ + +~~START~~ +int +2 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_char_collations N'café'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +1 +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_with_cast 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%'; +GO +~~START~~ +int +0 +~~END~~ + +~~START~~ +int +8 +~~END~~ + + +EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_subquery N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC BABEL_5966_sp_like_exists N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'prefix%', 3; +GO +~~START~~ +varchar +prefix_abc +PREFIX_ABC +Prefix_Abc +~~END~~ + + +EXEC BABEL_5966_sp_like_top N'zzz%', 5; +GO +~~START~~ +varchar +zzz_filler_1 +zzz_filler_10 +zzz_filler_100 +zzz_filler_1000 +zzz_filler_10000 +~~END~~ + + +-- Repeated execution +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +EXEC BABEL_5966_sp_like_varchar_param '%match'; +EXEC BABEL_5966_sp_like_varchar_param 'test%'; +EXEC BABEL_5966_sp_like_varchar_param 'a%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +9 +~~END~~ + + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'test%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'a%'; +GO +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +5 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +3 +~~END~~ + +~~START~~ +int +9 +~~END~~ + + + +-- sp_executesql +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'%match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'prefix%'; +GO +~~START~~ +int +4 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'prefix%'; +GO +~~START~~ +int +5 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = NULL; +GO +~~START~~ +int +0 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'EXACT MATCH'; +GO +~~START~~ +int +3 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'EXACT MATCH'; +GO +~~START~~ +int +1 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'resume'; +GO +~~START~~ +int +6 +~~END~~ + + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'resume'; +GO +~~START~~ +int +2 +~~END~~ + + + + +-- CHECK Constraints +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('valid_data'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('valid'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('invalid_data'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_prefix" violates check constraint "babel_5966_testlikecheck_prefix_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_nprefix (Col) VALUES ('valid_data'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_nprefix (Col) VALUES ('invalid_data'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_nprefix" violates check constraint "babel_5966_testlikecheck_nprefix_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('good_data'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('ok_data'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('bad_data'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_not_like" violates check constraint "babel_5966_testlikecheck_not_like_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('100%done'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('100%almost'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('200%done'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5966_testlikecheck_escape" violates check constraint "babel_5966_testlikecheck_escape_col_check")~~ + + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('is_valid'); +GO +~~ROW COUNT: 1~~ + + +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('also_valid'); +GO +~~ROW COUNT: 1~~ + + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('invalid'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_prefix; +GO +~~START~~ +int#!#varchar +1#!#valid_data +2#!#valid +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_nprefix; +GO +~~START~~ +int#!#varchar +1#!#valid_data +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_not_like; +GO +~~START~~ +int#!#varchar +1#!#good_data +2#!#ok_data +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_escape; +GO +~~START~~ +int#!#varchar +1#!#100%done +2#!#100%almost +~~END~~ + + +SELECT * FROM BABEL_5966_TestLikeCheck_suffix; +GO +~~START~~ +int#!#varchar +1#!#is_valid +2#!#also_valid +3#!#invalid +~~END~~ + + + +-- UPDATE / DELETE +UPDATE BABEL_5966_TestLikeCollation_CI_AS SET Col = Col WHERE Col LIKE N'prefix%'; +SELECT @@ROWCOUNT AS update_prefix; +GO +~~ROW COUNT: 5~~ + +~~START~~ +int +5 +~~END~~ + + +UPDATE BABEL_5966_TestLikeCollation_CI_AS SET Col = Col WHERE Col NOT LIKE N'zzz%'; +SELECT @@ROWCOUNT AS update_not_zzz; +GO +~~ROW COUNT: 48~~ + +~~START~~ +int +48 +~~END~~ + + +DELETE FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_xyz_abc%'; +SELECT @@ROWCOUNT AS delete_none; +GO +~~START~~ +int +0 +~~END~~ + + +exec sp_babelfish_configure 'explain_costs', 'off'; +GO + +SELECT set_config('enable_bitmapscan', 'on', false); +GO +~~START~~ +text +on +~~END~~ + diff --git a/test/JDBC/expected/test_constraint_like-vu-prepare.out b/test/JDBC/expected/test_constraint_like-vu-prepare.out index ccb27639bf7..895421ea26f 100644 --- a/test/JDBC/expected/test_constraint_like-vu-prepare.out +++ b/test/JDBC/expected/test_constraint_like-vu-prepare.out @@ -414,7 +414,7 @@ SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo GO ~~START~~ text -CHECK ((((sys.remove_accents_internal(((('123'::sys."varchar")::sys.nvarchar(3))::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ((sys.remove_accents_internal(((123)::sys."varchar"(3))::text))::text COLLATE sys.bbf_unicode_cp1_cs_as))) +CHECK ((((sys.remove_accents_internal(((('123'::sys."varchar")::sys.nvarchar(3))::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('123'::text COLLATE sys.bbf_unicode_cp1_cs_as))) ~~END~~ diff --git a/test/JDBC/expected/test_constraint_like-vu-verify.out b/test/JDBC/expected/test_constraint_like-vu-verify.out index fada9b4cd63..55cc3147ede 100644 --- a/test/JDBC/expected/test_constraint_like-vu-verify.out +++ b/test/JDBC/expected/test_constraint_like-vu-verify.out @@ -699,7 +699,7 @@ SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo GO ~~START~~ text -CHECK ((((sys.remove_accents_internal(((('123'::sys."varchar")::sys.nvarchar(3))::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ((sys.remove_accents_internal(((123)::sys."varchar"(3))::text))::text COLLATE sys.bbf_unicode_cp1_cs_as))) +CHECK ((((sys.remove_accents_internal(((('123'::sys."varchar")::sys.nvarchar(3))::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('123'::text COLLATE sys.bbf_unicode_cp1_cs_as))) ~~END~~ diff --git a/test/JDBC/expected/test_constraint_like_before_18_4-or-17_10-16_14-vu-cleanup.out b/test/JDBC/expected/test_constraint_like_before_18_4-or-17_10-16_14-vu-cleanup.out new file mode 100644 index 00000000000..4fa5a5762f2 --- /dev/null +++ b/test/JDBC/expected/test_constraint_like_before_18_4-or-17_10-16_14-vu-cleanup.out @@ -0,0 +1,202 @@ +-- CASE 1: T_Const LIKE T_CollateExpr(T_Const) +DROP VIEW BABEL_5608_vu_prepare_t1_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t1; +GO + +-- CASE 2: T_CollateExpr(T_Const) LIKE T_Const +DROP VIEW BABEL_5608_vu_prepare_t2_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t2; +GO + +-- CASE 3: T_CollateExpr(T_Const) LIKE T_CollateExpr(T_Const) +DROP VIEW BABEL_5608_vu_prepare_t3_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t3; +GO + +-- CASE 4: T_ReLabelType (T_Var) LIKE T_Const +DROP VIEW BABEL_5608_vu_prepare_t4_1_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t4_1; +GO + +DROP VIEW BABEL_5608_vu_prepare_t4_2_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t4_2; +GO + +-- CASE 5: T_ReLabelType(T_Var) LIKE T_CollateExpr(T_Const) +DROP VIEW BABEL_5608_vu_prepare_t5_1_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t5_1; +GO + +DROP VIEW BABEL_5608_vu_prepare_t5_2_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t5_2; +GO + +-- CASE 6: T_ReLabelType(T_Var) LIKE T_ReLabelType(T_Var) +DROP VIEW BABEL_5608_vu_prepare_t6_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t6; +GO + +-- CASE 7: T_CollateExpr(T_ReLabel(T_Var)) LIKE T_Const +DROP VIEW BABEL_5608_vu_prepare_t7_1_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t7_1; +GO + +DROP VIEW BABEL_5608_vu_prepare_t7_2_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t7_2; +GO + +-- CASE 8: T_CollateExpr(T_ReLabel(T_Var)) LIKE T_CollateExpr(T_Const) +DROP VIEW BABEL_5608_vu_prepare_t8_1_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t8_1; +GO + +DROP VIEW BABEL_5608_vu_prepare_t8_2_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t8_2; +GO + +-- CASE 9: T_FuncExpr LIKE T_CollateExpr(T_Const) AND COMBINATIONS +DROP VIEW BABEL_5608_vu_prepare_t9_1_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t9_1; +GO + +DROP VIEW BABEL_5608_vu_prepare_t9_2_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t9_2; +GO + +DROP VIEW BABEL_5608_vu_prepare_t9_3_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t9_3; +GO + +DROP VIEW BABEL_5608_vu_prepare_t9_4_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t9_4; +GO + +DROP VIEW BABEL_5608_vu_prepare_t9_5_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t9_5; +GO + +DROP VIEW BABEL_5608_vu_prepare_t9_6_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t9_6; +GO + +DROP VIEW BABEL_5608_vu_prepare_t9_7_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t9_7; +GO + +DROP VIEW BABEL_5608_vu_prepare_t9_8_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t9_8; +GO + +-- CASE 10: ESCAPE WITH LIKE +DROP VIEW BABEL_5608_vu_prepare_t10_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t10; +GO + +-- CASE 11: T_CoerceViaIO +DROP VIEW BABEL_5608_vu_prepare_t11_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t11; +GO + +-- CASE 12: CFL CONDITIONS AND MORE +-- IF ELSE +DROP VIEW BABEL_5608_vu_prepare_t12_1_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t12_1; +GO + +-- CASE WHEN +DROP VIEW BABEL_5608_vu_prepare_t12_2_VIEW; +GO + + + +-- COMPUTED COLUMN (BABEL-5022) +-- DROP VIEW BABEL_5608_vu_prepare_t12_3_VIEW; +-- GO +-- DROP TABLE BABEL_5608_vu_prepare_t12_3; +-- GO +-- FUNCTIONS +DROP FUNCTION BABEL_5608_vu_prepare_t12_fun1; +GO + +-- PROCEDURE +DROP PROCEDURE BABEL_5608_vu_prepare_t12_proc1; +GO + +-- CASE 13: VIEW WITH LIKE +DROP VIEW BABEL_5608_13_1_VIEW; +GO + +DROP VIEW BABEL_5608_13_2_VIEW; +GO + +DROP VIEW BABEL_5608_13_3_VIEW; +GO + +DROP VIEW BABEL_5608_13_4_VIEW; +GO + +DROP VIEW BABEL_5608_13_5_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t12_2; +GO + +-- CASE 14: PostFix Pattern match +DROP VIEW BABEL_5608_vu_prepare_t14_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t14; +GO + +-- CASE 15: T_Const LIKE T_Const +DROP VIEW BABEL_5608_vu_prepare_t15_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t15; +GO diff --git a/test/JDBC/expected/test_constraint_like_before_18_4-or-17_10-16_14-vu-prepare.out b/test/JDBC/expected/test_constraint_like_before_18_4-or-17_10-16_14-vu-prepare.out new file mode 100644 index 00000000000..ccb27639bf7 --- /dev/null +++ b/test/JDBC/expected/test_constraint_like_before_18_4-or-17_10-16_14-vu-prepare.out @@ -0,0 +1,520 @@ +-- tsql +-- CASE 1: T_Const LIKE T_CollateExpr(T_Const) +CREATE TABLE BABEL_5608_vu_prepare_t1(BABEL_5608_vu_prepare_t1_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t1_c1 CHECK ('abc' LIKE 'A%' COLLATE Latin1_general_ci_as)); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t1_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t1; +GO + +-- CASE 2: T_CollateExpr(T_Const) LIKE T_Const +CREATE TABLE BABEL_5608_vu_prepare_t2(BABEL_5608_vu_prepare_t2_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t2_c1 CHECK ('abc' COLLATE Latin1_general_ci_as LIKE 'A%')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t2_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t2; +GO + +-- CASE 3: T_CollateExpr(T_Const) LIKE T_CollateExpr(T_Const) +CREATE TABLE BABEL_5608_vu_prepare_t3(BABEL_5608_vu_prepare_t3_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t3_c1 CHECK ('abc' COLLATE Latin1_general_ci_as LIKE 'A%' COLLATE Latin1_general_ci_as)); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t3_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t3; +GO + +-- CASE 4: T_ReLabelType (T_Var) LIKE T_Const +CREATE TABLE BABEL_5608_vu_prepare_t4_1(BABEL_5608_vu_prepare_t4_1_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t4_1_c1 CHECK (BABEL_5608_vu_prepare_t4_1_col1 LIKE 'ABC')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t4_1_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t4_1; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t4_2(BABEL_5608_vu_prepare_t4_2_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t4_2_c1 CHECK (BABEL_5608_vu_prepare_t4_2_col1 LIKE 'a%')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t4_2_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t4_2; +GO + +-- CASE 5: T_ReLabelType(T_Var) LIKE T_CollateExpr(T_Const) +CREATE TABLE BABEL_5608_vu_prepare_t5_1(BABEL_5608_vu_prepare_t5_1_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t5_1_c1 CHECK (BABEL_5608_vu_prepare_t5_1_col1 LIKE 'ABC' COLLATE Latin1_General_CI_AI)); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t5_1_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t5_1; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t5_2(BABEL_5608_vu_prepare_t5_2_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t5_2_c1 CHECK (BABEL_5608_vu_prepare_t5_2_col1 LIKE 'a%' COLLATE Latin1_General_CI_AI)); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t5_2_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t5_2; +GO + +-- CASE 6: T_ReLabelType(T_Var) LIKE T_ReLabelType(T_Var) +CREATE TABLE BABEL_5608_vu_prepare_t6(BABEL_5608_vu_prepare_t6_col1 varchar(max), BABEL_5608_vu_prepare_t6_col2 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t6_c1 CHECK (BABEL_5608_vu_prepare_t6_col1 LIKE BABEL_5608_vu_prepare_t6_col2)); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t6_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t6; +GO + +-- CASE 7: T_CollateExpr(T_ReLabel(T_Var)) LIKE T_Const +CREATE TABLE BABEL_5608_vu_prepare_t7_1(BABEL_5608_vu_prepare_t7_1_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t7_1_c1 CHECK (BABEL_5608_vu_prepare_t7_1_col1 COLLATE Latin1_General_CI_AI LIKE 'abc')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t7_1_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t7_1; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t7_2(BABEL_5608_vu_prepare_t7_2_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t7_2_c1 CHECK (BABEL_5608_vu_prepare_t7_2_col1 COLLATE Latin1_General_CI_AI LIKE 'a%')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t7_2_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t7_2; +GO + +-- CASE 8: T_CollateExpr(T_ReLabel(T_Var)) LIKE T_CollateExpr(T_Const) +CREATE TABLE BABEL_5608_vu_prepare_t8_1(BABEL_5608_vu_prepare_t8_1_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t8_1_c1 CHECK (BABEL_5608_vu_prepare_t8_1_col1 COLLATE Latin1_General_CI_AI LIKE 'abc' COLLATE Latin1_General_CI_AI)); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t8_1_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t8_1; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t8_2(BABEL_5608_vu_prepare_t8_2_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t8_2_c1 CHECK (BABEL_5608_vu_prepare_t8_2_col1 COLLATE Latin1_General_CI_AI LIKE 'a%' COLLATE Latin1_General_CI_AI)); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t8_2_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t8_2; +GO + +-- CASE 9: T_FuncExpr LIKE T_CollateExpr(T_Const) AND COMBINTAIONS +CREATE TABLE BABEL_5608_vu_prepare_t9_1(BABEL_5608_vu_prepare_t9_1_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t9_1_c1 CHECK (LOWER(BABEL_5608_vu_prepare_t9_1_col1) LIKE 'abc')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t9_1_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t9_1; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t9_2(BABEL_5608_vu_prepare_t9_2_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t9_2_c1 CHECK (LOWER(BABEL_5608_vu_prepare_t9_2_col1) LIKE 'a%')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t9_2_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t9_2; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t9_3(BABEL_5608_vu_prepare_t9_3_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t9_3_c1 CHECK (LOWER(BABEL_5608_vu_prepare_t9_3_col1 COLLATE Latin1_General_CI_AI) LIKE 'abc')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t9_3_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t9_3; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t9_4(BABEL_5608_vu_prepare_t9_4_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t9_4_c1 CHECK (LOWER(BABEL_5608_vu_prepare_t9_4_col1 COLLATE Latin1_General_CI_AI) LIKE 'a%')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t9_4_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t9_4; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t9_5(BABEL_5608_vu_prepare_t9_5_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t9_5_c1 CHECK (LOWER(BABEL_5608_vu_prepare_t9_5_col1) COLLATE Latin1_General_CI_AI LIKE 'abc')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t9_5_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t9_5; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t9_6(BABEL_5608_vu_prepare_t9_6_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t9_6_c1 CHECK (LOWER(BABEL_5608_vu_prepare_t9_6_col1) COLLATE Latin1_General_CI_AI LIKE 'a%')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t9_6_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t9_6; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t9_7(BABEL_5608_vu_prepare_t9_7_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t9_7_c1 CHECK (LOWER(BABEL_5608_vu_prepare_t9_7_col1 COLLATE Latin1_General_CI_AI) LIKE 'abc' COLLATE Latin1_General_CI_AI)); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t9_7_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t9_7; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t9_8(BABEL_5608_vu_prepare_t9_8_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t9_8_c1 CHECK (LOWER(BABEL_5608_vu_prepare_t9_8_col1) COLLATE Latin1_General_CI_AI LIKE 'a%' COLLATE Latin1_General_CI_AI)); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t9_8_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t9_8; +GO + +-- CASE 10: ESCAPE WITH LIKE +CREATE TABLE BABEL_5608_vu_prepare_t10(BABEL_5608_vu_prepare_t10_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t10_c1 CHECK (BABEL_5608_vu_prepare_t10_col1 COLLATE Latin1_General_CI_AS LIKE '15/% %' ESCAPE '/')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t10_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t10; +GO + +-- CASE 11: T_CoerceViaIO +CREATE TABLE BABEL_5608_vu_prepare_t11(BABEL_5608_vu_prepare_t11_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t11_c1 CHECK (N'123' collate Latin1_General_CI_AI LIKE CAST(123 as varchar(3)))); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t11_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t11; +GO + +-- CASE 12: CFL CONDITIONS AND MORE +-- IF ELSE +CREATE TABLE BABEL_5608_vu_prepare_t12_1 (status varchar(10), CONSTRAINT chk_status CHECK (IIF(status LIKE 'act%', 1, 0) = 1 OR IIF(status = 'inactive', 1, 0) = 1)); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t12_1_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t12_1; +GO + +-- CASE WHEN +CREATE TABLE BABEL_5608_vu_prepare_t12_2 (status varchar(10),CONSTRAINT chk_status CHECK ( + CASE + WHEN status LIKE 'act%' THEN 1 + WHEN status LIKE 'inactive' THEN 1 + ELSE 0 + END = 1 + ) +); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t12_2_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t12_2; +GO + + + + +-- COMPUTED COLUMNS (BABEL-5022) +-- CREATE TABLE BABEL_5608_vu_prepare_t12_3 (name varchar(10), is_product AS CASE WHEN name LIKE 'PRD%' THEN 1 WHEN name LIKE 'DRP' THEN 2 ELSE 0 END PERSISTED); +-- GO +-- CREATE VIEW BABEL_5608_vu_prepare_t12_3_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t12_3; +-- GO +-- FUNCTION +CREATE FUNCTION BABEL_5608_vu_prepare_t12_fun1 +( + @pattern varchar(100) +) +RETURNS TABLE +AS +RETURN +( + SELECT * FROM BABEL_5608_vu_prepare_t12_2 + WHERE status LIKE @pattern +); +GO + +-- PROCEDURE +CREATE PROCEDURE BABEL_5608_vu_prepare_t12_proc1 + @pattern varchar(100) +AS +BEGIN + SET NOCOUNT ON; + + SELECT * FROM BABEL_5608_vu_prepare_t12_2 + WHERE status LIKE @pattern +END; +GO + + +-- CASE 13: VIEW WITH LIKE +CREATE VIEW BABEL_5608_13_1_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t12_2 WHERE status LIKE 'ac%'; +GO + +CREATE VIEW BABEL_5608_13_2_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t12_2 WHERE status COLLATE estonian_ci_ai LIKE 'ac%'; +GO + +CREATE VIEW BABEL_5608_13_3_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t12_2 WHERE status LIKE 'ac%' COLLATE estonian_ci_ai; +GO + +CREATE VIEW BABEL_5608_13_4_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t12_2 WHERE UPPER(status) LIKE 'ac%'; +GO + +CREATE VIEW BABEL_5608_13_5_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t12_2 WHERE UPPER(status) COLLATE DATABASE_DEFAULT LIKE 'ac%'; +GO + +-- CASE 14: PostFix Pattern match +CREATE TABLE BABEL_5608_vu_prepare_t14(BABEL_5608_vu_prepare_t14_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t14_c1 CHECK (BABEL_5608_vu_prepare_t14_col1 COLLATE Latin1_General_CI_AI LIKE '%abc')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t14_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t14; +GO + + +-- CASE 15: T_Const LIKE T_Const +CREATE TABLE BABEL_5608_vu_prepare_t15(BABEL_5608_vu_prepare_t15_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t15_c1 CHECK ('abc' LIKE 'A%')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t15_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t15; +GO + +-- psql +-- CASE 1: T_Const LIKE T_CollateExpr(T_Const) +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t1'::regclass; +GO +~~START~~ +text +CHECK ((('abc'::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('A%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 2: T_CollateExpr(T_Const) LIKE T_Const +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t2'::regclass; +GO +~~START~~ +text +CHECK ((('abc'::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('A%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 3: T_CollateExpr(T_Const) LIKE T_CollateExpr(T_Const) +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t3'::regclass; +GO +~~START~~ +text +CHECK ((('abc'::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('A%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 4: T_ReLabelType (T_Var) LIKE T_Const +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t4_1'::regclass; +GO +~~START~~ +text +CHECK ((((babel_5608_vu_prepare_t4_1_col1)::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('ABC'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t4_2'::regclass; +GO +~~START~~ +text +CHECK ((((babel_5608_vu_prepare_t4_2_col1)::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('a%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 5: T_ReLabelType(T_Var) LIKE T_CollateExpr(T_Const) +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t5_1'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal((babel_5608_vu_prepare_t5_1_col1)::text))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('ABC'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t5_2'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal((babel_5608_vu_prepare_t5_2_col1)::text))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('a%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 6: T_ReLabelType(T_Var) LIKE T_ReLabelType(T_Var) +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t6'::regclass; +GO +~~START~~ +text +CHECK ((((babel_5608_vu_prepare_t6_col1)::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ((babel_5608_vu_prepare_t6_col2)::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 7: T_CollateExpr(T_ReLabel(T_Var)) LIKE T_Const +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t7_1'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal(((babel_5608_vu_prepare_t7_1_col1)::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('abc'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t7_2'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal(((babel_5608_vu_prepare_t7_2_col1)::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('a%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 8: T_CollateExpr(T_ReLabel(T_Var)) LIKE T_CollateExpr(T_Const) +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t8_1'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal(((babel_5608_vu_prepare_t8_1_col1)::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('abc'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t8_2'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal(((babel_5608_vu_prepare_t8_2_col1)::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('a%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 9: T_FuncExpr LIKE T_CollateExpr(T_Const) AND COMBINTAIONS +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_1'::regclass; +GO +~~START~~ +text +CHECK ((((sys.lower(babel_5608_vu_prepare_t9_1_col1))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('abc'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_2'::regclass; +GO +~~START~~ +text +CHECK ((((sys.lower(babel_5608_vu_prepare_t9_2_col1))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('a%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_3'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal((sys.lower((babel_5608_vu_prepare_t9_3_col1 COLLATE sys.bbf_unicode_cp1_ci_ai)))::text))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('abc'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_4'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal((sys.lower((babel_5608_vu_prepare_t9_4_col1 COLLATE sys.bbf_unicode_cp1_ci_ai)))::text))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('a%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_5'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal(((sys.lower(babel_5608_vu_prepare_t9_5_col1))::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('abc'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_6'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal(((sys.lower(babel_5608_vu_prepare_t9_6_col1))::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('a%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_7'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal((sys.lower((babel_5608_vu_prepare_t9_7_col1 COLLATE sys.bbf_unicode_cp1_ci_ai)))::text))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('abc'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_8'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal(((sys.lower(babel_5608_vu_prepare_t9_8_col1))::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('a%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 10: ESCAPE WITH LIKE +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t10'::regclass; +GO +~~START~~ +text +CHECK ((((babel_5608_vu_prepare_t10_col1)::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* (like_escape('15/% %'::text, '/'::text) COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 11: T_CoerceViaIO +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t11'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal(((('123'::sys."varchar")::sys.nvarchar(3))::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ((sys.remove_accents_internal(((123)::sys."varchar"(3))::text))::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 12: CFL CONDITIONS AND MORE +-- IF ELSE +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t12_1'::regclass; +GO +~~START~~ +text +CHECK (((CASE WHEN (((status)::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('act%'::text COLLATE sys.bbf_unicode_cp1_cs_as)) THEN 1 ELSE 0END = 1) OR (CASE WHEN (status = 'inactive'::sys."varchar") THEN 1 ELSE 0END = 1))) +~~END~~ + + +-- CASE WHEN +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t12_2'::regclass; +GO +~~START~~ +text +CHECK ((CASE WHEN (((status)::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('act%'::text COLLATE sys.bbf_unicode_cp1_cs_as)) THEN 1 WHEN (((status)::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('inactive'::text COLLATE sys.bbf_unicode_cp1_cs_as)) THEN 1 ELSE 0END = 1)) +~~END~~ + + + +-- COMPUTED COLUMNS (BABEL-5022) +-- SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t12_3'::regclass; +-- GO +-- FUNCTION +SELECT pg_get_functiondef(CAST('master_dbo.BABEL_5608_vu_prepare_t12_fun1' as regproc)); +GO +~~START~~ +text +CREATE OR REPLACE FUNCTION master_dbo.babel_5608_vu_prepare_t12_fun1("@pattern" sys."varchar") RETURNS TABLE(status sys."varchar") LANGUAGE pltsqlAS '{"version_num": "1", "typmod_array": ["100", "-1"], "original_probin": ""}', $function$RETURN( SELECT * FROM BABEL_5608_vu_prepare_t12_2 WHERE status LIKE @pattern);$function$ +~~END~~ + + +-- PROCEDURE +SELECT pg_get_functiondef(CAST('master_dbo.BABEL_5608_vu_prepare_t12_proc1' as regproc)); +GO +~~START~~ +text +CREATE OR REPLACE PROCEDURE master_dbo.babel_5608_vu_prepare_t12_proc1(IN "@pattern" sys."varchar") LANGUAGE pltsqlAS '{"version_num": "1", "typmod_array": ["100"], "original_probin": ""}', $procedure$BEGIN SET NOCOUNT ON; SELECT * FROM BABEL_5608_vu_prepare_t12_2 WHERE status LIKE @patternEND;$procedure$ +~~END~~ + + + +-- CASE 13: VIEW WITH LIKE +SELECT pg_get_viewdef('master_dbo.BABEL_5608_13_1_VIEW', true); +GO +~~START~~ +text + SELECT status FROM master_dbo.babel_5608_vu_prepare_t12_2 WHERE status::text ~~ 'ac%'::text; +~~END~~ + + +SELECT pg_get_viewdef('master_dbo.BABEL_5608_13_2_VIEW', true); +GO +~~START~~ +text + SELECT status FROM master_dbo.babel_5608_vu_prepare_t12_2 WHERE (status::text COLLATE sys.estonian_ci_ai) ~~ 'ac%'::text; +~~END~~ + + +SELECT pg_get_viewdef('master_dbo.BABEL_5608_13_3_VIEW', true); +GO +~~START~~ +text + SELECT status FROM master_dbo.babel_5608_vu_prepare_t12_2 WHERE status::text ~~ ('ac%'::text COLLATE sys.estonian_ci_ai); +~~END~~ + + +SELECT pg_get_viewdef('master_dbo.BABEL_5608_13_4_VIEW', true); +GO +~~START~~ +text + SELECT status FROM master_dbo.babel_5608_vu_prepare_t12_2 WHERE sys.upper(status)::text ~~ 'ac%'::text; +~~END~~ + + +SELECT pg_get_viewdef('master_dbo.BABEL_5608_13_5_VIEW', true); +GO +~~START~~ +text + SELECT status FROM master_dbo.babel_5608_vu_prepare_t12_2 WHERE (sys.upper(status)::text COLLATE sys.bbf_unicode_cp1_ci_as) ~~ 'ac%'::text; +~~END~~ + + +-- CASE 14: PostFix Pattern match +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t14'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal(((babel_5608_vu_prepare_t14_col1)::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('%abc'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 15: T_Const LIKE T_Const +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t15'::regclass; +GO +~~START~~ +text +CHECK ((('abc'::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('A%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + diff --git a/test/JDBC/expected/test_constraint_like_before_18_4-or-17_10-16_14-vu-verify.out b/test/JDBC/expected/test_constraint_like_before_18_4-or-17_10-16_14-vu-verify.out new file mode 100644 index 00000000000..fada9b4cd63 --- /dev/null +++ b/test/JDBC/expected/test_constraint_like_before_18_4-or-17_10-16_14-vu-verify.out @@ -0,0 +1,804 @@ +-- tsql +-- CASE 1: T_Const LIKE T_CollateExpr(T_Const) +INSERT INTO BABEL_5608_vu_prepare_t1 VALUES('Abc'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t1_VIEW; +GO +~~START~~ +varchar +Abc +~~END~~ + + +-- CASE 2: T_CollateExpr(T_Const) LIKE T_Const +INSERT INTO BABEL_5608_vu_prepare_t2 VALUES('Abc'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t2_VIEW; +GO +~~START~~ +varchar +Abc +~~END~~ + + +-- CASE 3: T_CollateExpr(T_Const) LIKE T_CollateExpr(T_Const) +INSERT INTO BABEL_5608_vu_prepare_t3 VALUES('Abc'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t3_VIEW; +GO +~~START~~ +varchar +Abc +~~END~~ + + +-- CASE 4: T_ReLabelType (T_Var) LIKE T_Const +INSERT INTO BABEL_5608_vu_prepare_t4_1 VALUES ('Abc'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t4_1_VIEW; +GO +~~START~~ +varchar +Abc +~~END~~ + + +INSERT INTO BABEL_5608_vu_prepare_t4_2 VALUES ('Abc'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t4_2_VIEW; +GO +~~START~~ +varchar +Abc +~~END~~ + + +-- CASE 5: T_ReLabelType(T_Var) LIKE T_CollateExpr(T_Const) +INSERT INTO BABEL_5608_vu_prepare_t5_1 VALUES ('Abc'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t5_1_VIEW; +GO +~~START~~ +varchar +Abc +~~END~~ + + +INSERT INTO BABEL_5608_vu_prepare_t5_2 VALUES ('Abc'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t5_2_VIEW; +GO +~~START~~ +varchar +Abc +~~END~~ + + +-- CASE 6: T_ReLabelType(T_Var) LIKE T_ReLabelType(T_Var) +INSERT INTO BABEL_5608_vu_prepare_t6 VALUES('abc', 'ABC'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t6_VIEW; +GO +~~START~~ +varchar#!#varchar +abc#!#ABC +~~END~~ + + +-- CASE 7: T_CollateExpr(T_ReLabel(T_Var)) LIKE T_Const +INSERT INTO BABEL_5608_vu_prepare_t7_1 VALUES('ABC'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t7_1_VIEW; +GO +~~START~~ +varchar +ABC +~~END~~ + + +INSERT INTO BABEL_5608_vu_prepare_t7_2 VALUES('ABC'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t7_2_VIEW; +GO +~~START~~ +varchar +ABC +~~END~~ + + +-- CASE 8: T_CollateExpr(T_ReLabel(T_Var)) LIKE T_CollateExpr(T_Const) +INSERT INTO BABEL_5608_vu_prepare_t8_1 VALUES('ABC'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t8_1_VIEW; +GO +~~START~~ +varchar +ABC +~~END~~ + + +INSERT INTO BABEL_5608_vu_prepare_t8_2 VALUES('ABC'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t8_2_VIEW; +GO +~~START~~ +varchar +ABC +~~END~~ + + +-- CASE 9: T_FuncExpr LIKE T_CollateExpr(T_Const) AND COMBINATIONS +INSERT INTO BABEL_5608_vu_prepare_t9_1 VALUES('abc'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t9_1_VIEW; +GO +~~START~~ +varchar +abc +~~END~~ + + +INSERT INTO BABEL_5608_vu_prepare_t9_2 VALUES('abc'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t9_2_VIEW; +GO +~~START~~ +varchar +abc +~~END~~ + + +INSERT INTO BABEL_5608_vu_prepare_t9_3 VALUES('abc'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t9_3_VIEW; +GO +~~START~~ +varchar +abc +~~END~~ + + +INSERT INTO BABEL_5608_vu_prepare_t9_4 VALUES('abc'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t9_4_VIEW; +GO +~~START~~ +varchar +abc +~~END~~ + + +INSERT INTO BABEL_5608_vu_prepare_t9_5 VALUES('abc'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t9_5_VIEW; +GO +~~START~~ +varchar +abc +~~END~~ + + +INSERT INTO BABEL_5608_vu_prepare_t9_6 VALUES('abc'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t9_6_VIEW; +GO +~~START~~ +varchar +abc +~~END~~ + + +INSERT INTO BABEL_5608_vu_prepare_t9_7 VALUES('abc'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t9_7_VIEW; +GO +~~START~~ +varchar +abc +~~END~~ + + +INSERT INTO BABEL_5608_vu_prepare_t9_8 VALUES('abc'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t9_8_VIEW; +GO +~~START~~ +varchar +abc +~~END~~ + + +-- CASE 10: ESCAPE WITH LIKE +INSERT INTO BABEL_5608_vu_prepare_t10 values('15% off'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t10_VIEW; +GO +~~START~~ +varchar +15% off +~~END~~ + + +-- CASE 11: T_CoerceViaIO +INSERT INTO BABEL_5608_vu_prepare_t11 values('abc'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t11_VIEW; +GO +~~START~~ +varchar +abc +~~END~~ + + +-- CASE 12: CFL CONDITIONS AND MORE +-- IF ELSE +INSERT INTO BABEL_5608_vu_prepare_t12_1 VALUES ('active'); +INSERT INTO BABEL_5608_vu_prepare_t12_1 VALUES ('inactive'); +GO +~~ROW COUNT: 1~~ + +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t12_1_VIEW; +GO +~~START~~ +varchar +active +inactive +~~END~~ + + +-- CASE WHEN +INSERT INTO BABEL_5608_vu_prepare_t12_2 VALUES ('active'); +INSERT INTO BABEL_5608_vu_prepare_t12_2 VALUES ('inactive'); +GO +~~ROW COUNT: 1~~ + +~~ROW COUNT: 1~~ + + +-- should fail +INSERT INTO BABEL_5608_vu_prepare_t12_2 VALUES ('idle'); +GO +~~ERROR (Code: 547)~~ + +~~ERROR (Message: new row for relation "babel_5608_vu_prepare_t12_2" violates check constraint "chk_status")~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t12_2_VIEW; +GO +~~START~~ +varchar +active +inactive +~~END~~ + + +-- IF EXISTS +IF (EXISTS (SELECT 1 FROM BABEL_5608_vu_prepare_t12_2 WHERE status LIKE 'act%')) +BEGIN + SELECT 'Found matching records' +END +ELSE +BEGIN + SELECT 'No matches found' +END +GO +~~START~~ +varchar +Found matching records +~~END~~ + + +IF (EXISTS (SELECT 1 FROM BABEL_5608_vu_prepare_t12_2 WHERE status LIKE 'inactive')) +BEGIN + SELECT 'Found matching records' +END +ELSE +BEGIN + SELECT 'No matches found' +END +GO +~~START~~ +varchar +Found matching records +~~END~~ + + +IF (EXISTS (SELECT 1 FROM BABEL_5608_vu_prepare_t12_2 WHERE status LIKE 'idle')) +BEGIN + SELECT 'Found matching records' +END +ELSE +BEGIN + SELECT 'No matches found' +END +GO +~~START~~ +varchar +No matches found +~~END~~ + + + + + +-- COMPUTED COLUMNS (BABEL-5022) +-- INSERT INTO BABEL_5608_vu_prepare_t12_3(name) VALUES('prd'),('drp'); +-- GO +-- INSERT INTO BABEL_5608_vu_prepare_t12_3(name) VALUES('r'); +-- GO +-- SELECT * FROM BABEL_5608_vu_prepare_t12_3_VIEW; +-- GO +-- FUNCTION +SELECT * FROM BABEL_5608_vu_prepare_t12_fun1('act%'); +GO +~~START~~ +varchar +active +~~END~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t12_fun1('inactive'); +GO +~~START~~ +varchar +inactive +~~END~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t12_fun1('idle%'); +GO +~~START~~ +varchar +~~END~~ + + + +-- PROCEDURE +EXEC BABEL_5608_vu_prepare_t12_proc1 'act%'; +GO +~~START~~ +varchar +active +~~END~~ + + +EXEC BABEL_5608_vu_prepare_t12_proc1 'inactive'; +GO +~~START~~ +varchar +inactive +~~END~~ + + +EXEC BABEL_5608_vu_prepare_t12_proc1 'idle'; +GO +~~START~~ +varchar +~~END~~ + + +-- CASE 13: VIEW WITH LIKE +SELECT * FROM BABEL_5608_13_1_VIEW; +GO +~~START~~ +varchar +active +~~END~~ + + +SELECT * FROM BABEL_5608_13_2_VIEW; +GO +~~START~~ +varchar +active +~~END~~ + + +SELECT * FROM BABEL_5608_13_3_VIEW; +GO +~~START~~ +varchar +active +~~END~~ + + +SELECT * FROM BABEL_5608_13_4_VIEW; +GO +~~START~~ +varchar +active +~~END~~ + + +SELECT * FROM BABEL_5608_13_5_VIEW; +GO +~~START~~ +varchar +active +~~END~~ + + +-- CASE 14: PostFix Pattern match +INSERT INTO BABEL_5608_vu_prepare_t14 VALUES ('abc'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t14_VIEW; +GO +~~START~~ +varchar +abc +~~END~~ + + +-- CASE 15: T_Const LIKE T_Const +INSERT INTO BABEL_5608_vu_prepare_t15 VALUES ('abc'); +GO +~~ROW COUNT: 1~~ + + +SELECT * FROM BABEL_5608_vu_prepare_t15_VIEW; +GO +~~START~~ +varchar +abc +~~END~~ + + +-- psql +-- CASE 1: T_Const LIKE T_CollateExpr(T_Const) +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t1'::regclass; +GO +~~START~~ +text +CHECK ((('abc'::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('A%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 2: T_CollateExpr(T_Const) LIKE T_Const +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t2'::regclass; +GO +~~START~~ +text +CHECK ((('abc'::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('A%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 3: T_CollateExpr(T_Const) LIKE T_CollateExpr(T_Const) +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t3'::regclass; +GO +~~START~~ +text +CHECK ((('abc'::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('A%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 4: T_ReLabelType (T_Var) LIKE T_Const +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t4_1'::regclass; +GO +~~START~~ +text +CHECK ((((babel_5608_vu_prepare_t4_1_col1)::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('ABC'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t4_2'::regclass; +GO +~~START~~ +text +CHECK ((((babel_5608_vu_prepare_t4_2_col1)::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('a%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 5: T_ReLabelType(T_Var) LIKE T_CollateExpr(T_Const) +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t5_1'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal((babel_5608_vu_prepare_t5_1_col1)::text))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('ABC'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t5_2'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal((babel_5608_vu_prepare_t5_2_col1)::text))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('a%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 6: T_ReLabelType(T_Var) LIKE T_ReLabelType(T_Var) +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t6'::regclass; +GO +~~START~~ +text +CHECK ((((babel_5608_vu_prepare_t6_col1)::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ((babel_5608_vu_prepare_t6_col2)::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 7: T_CollateExpr(T_ReLabel(T_Var)) LIKE T_Const +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t7_1'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal(((babel_5608_vu_prepare_t7_1_col1)::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('abc'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t7_2'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal(((babel_5608_vu_prepare_t7_2_col1)::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('a%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 8: T_CollateExpr(T_ReLabel(T_Var)) LIKE T_CollateExpr(T_Const) +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t8_1'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal(((babel_5608_vu_prepare_t8_1_col1)::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('abc'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t8_2'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal(((babel_5608_vu_prepare_t8_2_col1)::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('a%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 9: T_FuncExpr LIKE T_CollateExpr(T_Const) AND COMBINTAIONS +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_1'::regclass; +GO +~~START~~ +text +CHECK ((((sys.lower(babel_5608_vu_prepare_t9_1_col1))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('abc'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_2'::regclass; +GO +~~START~~ +text +CHECK ((((sys.lower(babel_5608_vu_prepare_t9_2_col1))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('a%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_3'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal((sys.lower((babel_5608_vu_prepare_t9_3_col1 COLLATE sys.bbf_unicode_cp1_ci_ai)))::text))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('abc'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_4'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal((sys.lower((babel_5608_vu_prepare_t9_4_col1 COLLATE sys.bbf_unicode_cp1_ci_ai)))::text))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('a%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_5'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal(((sys.lower(babel_5608_vu_prepare_t9_5_col1))::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('abc'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_6'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal(((sys.lower(babel_5608_vu_prepare_t9_6_col1))::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('a%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_7'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal((sys.lower((babel_5608_vu_prepare_t9_7_col1 COLLATE sys.bbf_unicode_cp1_ci_ai)))::text))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('abc'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_8'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal(((sys.lower(babel_5608_vu_prepare_t9_8_col1))::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('a%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 10: ESCAPE WITH LIKE +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t10'::regclass; +GO +~~START~~ +text +CHECK ((((babel_5608_vu_prepare_t10_col1)::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* (like_escape('15/% %'::text, '/'::text) COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 11: T_CoerceViaIO +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t11'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal(((('123'::sys."varchar")::sys.nvarchar(3))::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ((sys.remove_accents_internal(((123)::sys."varchar"(3))::text))::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 12: CFL CONDITIONS AND MORE +-- IF ELSE +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t12_1'::regclass; +GO +~~START~~ +text +CHECK (((CASE WHEN (((status)::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('act%'::text COLLATE sys.bbf_unicode_cp1_cs_as)) THEN 1 ELSE 0END = 1) OR (CASE WHEN (status = 'inactive'::sys."varchar") THEN 1 ELSE 0END = 1))) +~~END~~ + + +-- CASE WHEN +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t12_2'::regclass; +GO +~~START~~ +text +CHECK ((CASE WHEN (((status)::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('act%'::text COLLATE sys.bbf_unicode_cp1_cs_as)) THEN 1 WHEN (((status)::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('inactive'::text COLLATE sys.bbf_unicode_cp1_cs_as)) THEN 1 ELSE 0END = 1)) +~~END~~ + + + +-- COMPUTED COLUMNS (BABEL-5022) +-- SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t12_3'::regclass; +-- GO +-- FUNCTION +SELECT pg_get_functiondef(CAST('master_dbo.BABEL_5608_vu_prepare_t12_fun1' as regproc)); +GO +~~START~~ +text +CREATE OR REPLACE FUNCTION master_dbo.babel_5608_vu_prepare_t12_fun1("@pattern" sys."varchar") RETURNS TABLE(status sys."varchar") LANGUAGE pltsqlAS '{"version_num": "1", "typmod_array": ["100", "-1"], "original_probin": ""}', $function$RETURN( SELECT * FROM BABEL_5608_vu_prepare_t12_2 WHERE status LIKE @pattern);$function$ +~~END~~ + + +-- PROCEDURE +SELECT pg_get_functiondef(CAST('master_dbo.BABEL_5608_vu_prepare_t12_proc1' as regproc)); +GO +~~START~~ +text +CREATE OR REPLACE PROCEDURE master_dbo.babel_5608_vu_prepare_t12_proc1(IN "@pattern" sys."varchar") LANGUAGE pltsqlAS '{"version_num": "1", "typmod_array": ["100"], "original_probin": ""}', $procedure$BEGIN SET NOCOUNT ON; SELECT * FROM BABEL_5608_vu_prepare_t12_2 WHERE status LIKE @patternEND;$procedure$ +~~END~~ + + +-- CASE 13: VIEW WITH LIKE +SELECT pg_get_viewdef('master_dbo.BABEL_5608_13_1_VIEW', true); +GO +~~START~~ +text + SELECT status FROM master_dbo.babel_5608_vu_prepare_t12_2 WHERE status::text ~~ 'ac%'::text; +~~END~~ + + +SELECT pg_get_viewdef('master_dbo.BABEL_5608_13_2_VIEW', true); +GO +~~START~~ +text + SELECT status FROM master_dbo.babel_5608_vu_prepare_t12_2 WHERE (status::text COLLATE sys.estonian_ci_ai) ~~ 'ac%'::text; +~~END~~ + + +SELECT pg_get_viewdef('master_dbo.BABEL_5608_13_3_VIEW', true); +GO +~~START~~ +text + SELECT status FROM master_dbo.babel_5608_vu_prepare_t12_2 WHERE status::text ~~ ('ac%'::text COLLATE sys.estonian_ci_ai); +~~END~~ + + +SELECT pg_get_viewdef('master_dbo.BABEL_5608_13_4_VIEW', true); +GO +~~START~~ +text + SELECT status FROM master_dbo.babel_5608_vu_prepare_t12_2 WHERE sys.upper(status)::text ~~ 'ac%'::text; +~~END~~ + + +SELECT pg_get_viewdef('master_dbo.BABEL_5608_13_5_VIEW', true); +GO +~~START~~ +text + SELECT status FROM master_dbo.babel_5608_vu_prepare_t12_2 WHERE (sys.upper(status)::text COLLATE sys.bbf_unicode_cp1_ci_as) ~~ 'ac%'::text; +~~END~~ + + +-- CASE 14: PostFix Pattern match +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t14'::regclass; +GO +~~START~~ +text +CHECK ((((sys.remove_accents_internal(((babel_5608_vu_prepare_t14_col1)::text COLLATE sys.bbf_unicode_cp1_ci_ai)))::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('%abc'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + + +-- CASE 15: T_Const LIKE T_Const +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t15'::regclass; +GO +~~START~~ +text +CHECK ((('abc'::text COLLATE sys.bbf_unicode_cp1_cs_as) ~~* ('A%'::text COLLATE sys.bbf_unicode_cp1_cs_as))) +~~END~~ + diff --git a/test/JDBC/input/like_op_index_scan-before-15_2-vu-cleanup.sql b/test/JDBC/input/like_op_index_scan-before-15_2-vu-cleanup.sql new file mode 100644 index 00000000000..43cac8bf45a --- /dev/null +++ b/test/JDBC/input/like_op_index_scan-before-15_2-vu-cleanup.sql @@ -0,0 +1,85 @@ +DROP VIEW BABEL_5966_vw_like_nested; +DROP VIEW BABEL_5966_vw_like_exact; +DROP VIEW BABEL_5966_vw_like_prefix; +DROP VIEW BABEL_5966_vw_like_suffix; +DROP VIEW BABEL_5966_vw_like_contains; +DROP VIEW BABEL_5966_vw_like_single_char; +DROP VIEW BABEL_5966_vw_not_like; +DROP VIEW BABEL_5966_vw_not_like_exact; +DROP VIEW BABEL_5966_vw_like_nvar_exact; +DROP VIEW BABEL_5966_vw_like_nvar_prefix; +DROP VIEW BABEL_5966_vw_like_nvar_suffix; +DROP VIEW BABEL_5966_vw_like_char_exact; +DROP VIEW BABEL_5966_vw_like_char_prefix; +DROP VIEW BABEL_5966_vw_like_char_suffix; +DROP VIEW BABEL_5966_vw_like_or; +DROP VIEW BABEL_5966_vw_like_and; +DROP VIEW BABEL_5966_vw_like_escape_pct; +DROP VIEW BABEL_5966_vw_like_escape_underscore; +DROP VIEW BABEL_5966_vw_like_unicode; +DROP VIEW BABEL_5966_vw_like_unicode_prefix; +DROP VIEW BABEL_5966_vw_like_cast_varchar; +DROP VIEW BABEL_5966_vw_like_cast_nvarchar; +DROP VIEW BABEL_5966_vw_like_cast_char; +DROP VIEW BABEL_5966_vw_like_ci_as; +DROP VIEW BABEL_5966_vw_like_cs_as; +DROP VIEW BABEL_5966_vw_like_ci_ai; +DROP VIEW BABEL_5966_vw_like_cs_ai; +DROP VIEW BABEL_5966_vw_like_ci_as_prefix; +DROP VIEW BABEL_5966_vw_like_cs_as_prefix; +DROP VIEW BABEL_5966_vw_like_ci_ai_prefix; +DROP VIEW BABEL_5966_vw_like_cs_ai_prefix; +DROP VIEW BABEL_5966_vw_like_with_id; +GO + +DROP PROCEDURE BABEL_5966_sp_like_exact_const; +DROP PROCEDURE BABEL_5966_sp_like_prefix_const; +DROP PROCEDURE BABEL_5966_sp_like_suffix_const; +DROP PROCEDURE BABEL_5966_sp_like_varchar_param; +DROP PROCEDURE BABEL_5966_sp_like_nvarchar_param; +DROP PROCEDURE BABEL_5966_sp_like_all_types; +DROP PROCEDURE BABEL_5966_sp_not_like_param; +DROP PROCEDURE BABEL_5966_sp_like_escape; +DROP PROCEDURE BABEL_5966_sp_like_dynamic; +DROP PROCEDURE BABEL_5966_sp_like_output; +DROP PROCEDURE BABEL_5966_sp_like_all_collations; +DROP PROCEDURE BABEL_5966_sp_like_nvar_collations; +DROP PROCEDURE BABEL_5966_sp_like_char_collations; +DROP PROCEDURE BABEL_5966_sp_like_with_cast; +DROP PROCEDURE BABEL_5966_sp_like_multi_condition; +DROP PROCEDURE BABEL_5966_sp_like_subquery; +DROP PROCEDURE BABEL_5966_sp_like_exists; +DROP PROCEDURE BABEL_5966_sp_like_top; +GO + +DROP TABLE BABEL_5966_TestLikeCollation_CI_AS; +GO +DROP TABLE BABEL_5966_TestLikeCollation_CS_AS; +GO +DROP TABLE BABEL_5966_TestLikeCollation_CI_AI; +GO +DROP TABLE BABEL_5966_TestLikeCollation_CS_AI; +GO +DROP TABLE BABEL_5966_TestLikeNVarCollation_CI_AS; +GO +DROP TABLE BABEL_5966_TestLikeNVarCollation_CS_AS; +GO +DROP TABLE BABEL_5966_TestLikeNVarCollation_CI_AI; +GO +DROP TABLE BABEL_5966_TestLikeNVarCollation_CS_AI; +GO +DROP TABLE BABEL_5966_TestLikeCharCollation_CI_AS; +GO +DROP TABLE BABEL_5966_TestLikeCharCollation_CS_AS; +GO +DROP TABLE BABEL_5966_TestLikeCharCollation_CI_AI; +GO +DROP TABLE BABEL_5966_TestLikeCharCollation_CS_AI; +GO + +DROP TABLE BABEL_5966_TestLikeCheck_prefix; +DROP TABLE BABEL_5966_TestLikeCheck_nprefix; +DROP TABLE BABEL_5966_TestLikeCheck_not_like; +DROP TABLE BABEL_5966_TestLikeCheck_escape; +DROP TABLE BABEL_5966_TestLikeCheck_suffix; +GO diff --git a/test/JDBC/input/like_op_index_scan-before-15_2-vu-prepare.sql b/test/JDBC/input/like_op_index_scan-before-15_2-vu-prepare.sql new file mode 100644 index 00000000000..e8d5f3b0247 --- /dev/null +++ b/test/JDBC/input/like_op_index_scan-before-15_2-vu-prepare.sql @@ -0,0 +1,466 @@ +CREATE TABLE BABEL_5966_TestLikeCollation_CI_AS ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeCollation_CS_AS ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeCollation_CI_AI ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AI +); +GO + +CREATE TABLE BABEL_5966_TestLikeCollation_CS_AI ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AI +); +GO + +CREATE INDEX BABEL_5966_idx_ci_as ON BABEL_5966_TestLikeCollation_CI_AS(Col); +CREATE INDEX BABEL_5966_idx_cs_as ON BABEL_5966_TestLikeCollation_CS_AS(Col); +GO + +INSERT INTO BABEL_5966_TestLikeCollation_CI_AS (Col) +VALUES ('exact match'), ('EXACT MATCH'), ('Exact Match'), + ('prefix_abc'), ('PREFIX_ABC'), ('Prefix_Abc'), + ('prefix_def'), ('prefix_ghi'), + ('something else'), ('another value'), + ('test data 1'), ('test data 2'), ('test data 3'), + ('UPPER CASE'), ('mixed Case'), + ('café'), ('CAFÉ'), ('Café'), + ('résumé'), ('RÉSUMÉ'), ('Résumé'), + ('naïve'), ('NAÏVE'), ('Naïve'), + ('resume'), ('RESUME'), ('Resume'), + ('naive'), ('NAIVE'), ('Naive'), + ('straße'), ('STRASSE'), ('Straße'), + ('a'), ('A'), ('ab'), ('abc'), ('ABC'), + ('100%done'), ('under_score'), + ('back\slash'), ('single''quote'), + (' spaces '), ('trailing '), (' leading'), + ('aaaaaaaaaa'), ('AAAAAAAAAA'), ('aAbBcCdDeE'); +GO + +INSERT INTO BABEL_5966_TestLikeCollation_CI_AS (Col) +SELECT 'zzz_filler_' + CAST(n AS VARCHAR(10)) +FROM generate_series(1, 20000) AS n; +GO + +INSERT INTO BABEL_5966_TestLikeCollation_CS_AS (Col) +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS; +GO + +INSERT INTO BABEL_5966_TestLikeCollation_CI_AI (Col) +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS; +GO + +INSERT INTO BABEL_5966_TestLikeCollation_CS_AI (Col) +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS; +GO + +CREATE TABLE BABEL_5966_TestLikeNVarCollation_CI_AS ( + Id INT IDENTITY PRIMARY KEY, + Col NVARCHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeNVarCollation_CS_AS ( + Id INT IDENTITY PRIMARY KEY, + Col NVARCHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeNVarCollation_CI_AI ( + Id INT IDENTITY PRIMARY KEY, + Col NVARCHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AI +); +GO + +CREATE TABLE BABEL_5966_TestLikeNVarCollation_CS_AI ( + Id INT IDENTITY PRIMARY KEY, + Col NVARCHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AI +); +GO + +CREATE INDEX BABEL_5966_idx_nvar_ci_as ON BABEL_5966_TestLikeNVarCollation_CI_AS(Col); +CREATE INDEX BABEL_5966_idx_nvar_cs_as ON BABEL_5966_TestLikeNVarCollation_CS_AS(Col); +GO + +INSERT INTO BABEL_5966_TestLikeNVarCollation_CI_AS (Col) +VALUES (N'exact match'), (N'EXACT MATCH'), (N'Exact Match'), + (N'prefix_abc'), (N'PREFIX_ABC'), + (N'prefix_def'), (N'prefix_ghi'), + (N'something else'), (N'another value'), + (N'test data 1'), (N'test data 2'), (N'test data 3'), + (N'café'), (N'CAFÉ'), + (N'résumé'), (N'RÉSUMÉ'), (N'resume'), (N'RESUME'), + (N'naïve'), (N'NAÏVE'), (N'naive'), (N'NAIVE'), + (N'straße'), (N'STRASSE'), + (N'a'), (N'A'), (N'ab'), (N'abc'), (N'ABC'), + (N'100%done'), (N'under_score'), + (N'back\slash'), (N'single''quote'), + (N' spaces '), (N'trailing '), (N' leading'), + (N'aaaaaaaaaa'), (N'AAAAAAAAAA'), (N'aAbBcCdDeE'); +GO + +INSERT INTO BABEL_5966_TestLikeNVarCollation_CI_AS (Col) +SELECT N'zzz_filler_' + CAST(n AS NVARCHAR(10)) +FROM generate_series(1, 20000) AS n; +GO + +INSERT INTO BABEL_5966_TestLikeNVarCollation_CS_AS (Col) SELECT Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS; +INSERT INTO BABEL_5966_TestLikeNVarCollation_CI_AI (Col) SELECT Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS; +INSERT INTO BABEL_5966_TestLikeNVarCollation_CS_AI (Col) SELECT Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS; +GO + +CREATE TABLE BABEL_5966_TestLikeCharCollation_CI_AS ( + Id INT IDENTITY PRIMARY KEY, + Col CHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeCharCollation_CS_AS ( + Id INT IDENTITY PRIMARY KEY, + Col CHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeCharCollation_CI_AI ( + Id INT IDENTITY PRIMARY KEY, + Col CHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AI +); +GO + +CREATE TABLE BABEL_5966_TestLikeCharCollation_CS_AI ( + Id INT IDENTITY PRIMARY KEY, + Col CHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AI +); +GO + +CREATE INDEX BABEL_5966_idx_char_ci_as ON BABEL_5966_TestLikeCharCollation_CI_AS(Col); +CREATE INDEX BABEL_5966_idx_char_cs_as ON BABEL_5966_TestLikeCharCollation_CS_AS(Col); +GO + +INSERT INTO BABEL_5966_TestLikeCharCollation_CI_AS (Col) +VALUES ('exact match'), ('EXACT MATCH'), ('Exact Match'), + ('prefix_abc'), ('PREFIX_ABC'), ('Prefix_Abc'), + ('prefix_def'), ('prefix_ghi'), + ('something else'), ('another value'), + ('test data 1'), ('test data 2'), ('test data 3'), + ('café'), ('CAFÉ'), ('Café'), + ('résumé'), ('RÉSUMÉ'), ('Résumé'), + ('naïve'), ('NAÏVE'), ('Naïve'), + ('resume'), ('RESUME'), ('Resume'), + ('naive'), ('NAIVE'), ('Naive'), + ('straße'), ('STRASSE'), ('Straße'), + ('a'), ('A'), ('ab'), ('abc'), ('ABC'), + ('100%done'), ('under_score'), + ('back\slash'), ('single''quote'), + (' spaces '), ('trailing '), (' leading'), + ('aaaaaaaaaa'), ('AAAAAAAAAA'), ('aAbBcCdDeE'); +GO + +INSERT INTO BABEL_5966_TestLikeCharCollation_CI_AS (Col) +SELECT 'zzz_filler_' + CAST(n AS VARCHAR(10)) +FROM generate_series(1, 20000) AS n; +GO + +INSERT INTO BABEL_5966_TestLikeCharCollation_CS_AS (Col) SELECT Col FROM BABEL_5966_TestLikeCharCollation_CI_AS; +INSERT INTO BABEL_5966_TestLikeCharCollation_CI_AI (Col) SELECT Col FROM BABEL_5966_TestLikeCharCollation_CI_AS; +INSERT INTO BABEL_5966_TestLikeCharCollation_CS_AI (Col) SELECT Col FROM BABEL_5966_TestLikeCharCollation_CI_AS; +GO + +-- Views (using CI_AS explicit collation tables) + +CREATE VIEW BABEL_5966_vw_like_exact AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_suffix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +CREATE VIEW BABEL_5966_vw_like_contains AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO + +CREATE VIEW BABEL_5966_vw_like_single_char AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_'; +GO + +CREATE VIEW BABEL_5966_vw_not_like AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'zzz%'; +GO + +CREATE VIEW BABEL_5966_vw_not_like_exact AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_nvar_exact AS +SELECT Id, Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_nvar_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_nvar_suffix AS +SELECT Id, Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +CREATE VIEW BABEL_5966_vw_like_char_exact AS +SELECT Id, Col FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_char_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_char_suffix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +CREATE VIEW BABEL_5966_vw_like_or AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS +WHERE Col LIKE N'prefix%' OR Col LIKE N'test%'; +GO + +CREATE VIEW BABEL_5966_vw_like_and AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS +WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc'; +GO + +CREATE VIEW BABEL_5966_vw_like_escape_pct AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO + +CREATE VIEW BABEL_5966_vw_like_escape_underscore AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO + +CREATE VIEW BABEL_5966_vw_like_unicode AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO + +CREATE VIEW BABEL_5966_vw_like_unicode_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO + +CREATE VIEW BABEL_5966_vw_like_cast_varchar AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +CREATE VIEW BABEL_5966_vw_like_cast_nvarchar AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +GO + +CREATE VIEW BABEL_5966_vw_like_cast_char AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +CREATE VIEW BABEL_5966_vw_like_ci_as AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_cs_as AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_ci_ai AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_cs_ai AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_ci_as_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_cs_as_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_ci_ai_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_cs_ai_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_nested AS +SELECT * FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%'; +GO + +CREATE VIEW BABEL_5966_vw_like_with_id AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS +WHERE Col LIKE N'prefix%' AND Id > 0; +GO + +-- Stored Procedures + +CREATE PROCEDURE BABEL_5966_sp_like_exact_const AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_prefix_const AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_suffix_const AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_varchar_param @pattern VARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_nvarchar_param @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_all_types @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_not_like_param @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_escape @pattern NVARCHAR(50), @esc CHAR(1) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern ESCAPE @esc; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_dynamic @prefix VARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @prefix + '%'; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_output @pattern NVARCHAR(50), @cnt INT OUTPUT AS +BEGIN + SELECT @cnt = COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_all_collations @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_nvar_collations @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_char_collations @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_with_cast @val VARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@val AS VARCHAR(50)); + SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@val AS NVARCHAR(50)); +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_multi_condition @p1 NVARCHAR(50), @p2 NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p1 AND Col LIKE @p2; + SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p1 OR Col LIKE @p2; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_subquery @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS + WHERE Id IN (SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern); +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_exists @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS t1 + WHERE EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 WHERE t2.Col LIKE @pattern AND t2.Id = t1.Id); +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_top @pattern NVARCHAR(50), @top INT AS +BEGIN + SELECT TOP(@top) Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern ORDER BY Col; +END; +GO + +-- CHECK Constraints + +CREATE TABLE BABEL_5966_TestLikeCheck_prefix ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(50) CHECK (Col LIKE 'valid%') +); +GO + +CREATE TABLE BABEL_5966_TestLikeCheck_nprefix ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(50) CHECK (Col LIKE N'valid%') +); +GO + +CREATE TABLE BABEL_5966_TestLikeCheck_not_like ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(50) CHECK (Col NOT LIKE 'bad%') +); +GO + +CREATE TABLE BABEL_5966_TestLikeCheck_escape ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(50) CHECK (Col LIKE '100!%%' ESCAPE '!') +); +GO + +CREATE TABLE BABEL_5966_TestLikeCheck_suffix ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(50) CHECK (Col LIKE '%_valid') +); +GO diff --git a/test/JDBC/input/like_op_index_scan-before-15_2-vu-verify.mix b/test/JDBC/input/like_op_index_scan-before-15_2-vu-verify.mix new file mode 100644 index 00000000000..86c8b7fab9f --- /dev/null +++ b/test/JDBC/input/like_op_index_scan-before-15_2-vu-verify.mix @@ -0,0 +1,2699 @@ +-- sla 80000 +-- parallel_query_expected +-- psql +ANALYZE master_dbo.babel_5966_testlikecollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikecollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikecollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikecollation_cs_ai; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_cs_ai; +ANALYZE master_dbo.babel_5966_testlikecharcollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikecharcollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikecharcollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikecharcollation_cs_ai; +GO + +-- tsql +SELECT set_config('enable_bitmapscan', 'off', false); +GO + +exec sp_babelfish_configure 'explain_costs', 'off'; +GO + +SET babelfish_showplan_all ON; +GO + +-- Plain literal (VARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%'; +GO + +-- Plain literal (NVARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO + +-- Plain literal (CHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO + +-- N-prefix literal (VARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%abc'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO + +-- N-prefix literal (NVARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +-- N-prefix literal (CHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +-- N-prefix with no extractable prefix + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%else'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%else'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%a%b%c%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_xact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_refix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'___'; +GO + +-- CAST/CONVERT of constants (VARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO + +-- CONVERT (VARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'prefix%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'%match'); +GO + +-- CAST/CONVERT (NVARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO + +-- CAST/CONVERT (CHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO + +-- TRY_CAST (VARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('%match' AS NVARCHAR(50)); +GO + +-- TRY_CAST (NVARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)); +GO + +-- TRY_CAST (CHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS NVARCHAR(50)); +GO + +-- TRY_CAST nested + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(TRY_CAST(N'exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO + +-- TRY_CONVERT (VARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'prefix%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'%match'); +GO + +-- TRY_CONVERT (NVARCHAR/CHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), 'prefix%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO + +-- TRY_CAST/TRY_CONVERT non-const (col ref) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(Col AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), Col); +GO + +-- TRY_CAST/TRY_CONVERT with parameter + +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(@p AS VARCHAR(50)); +GO + +DECLARE @p NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), @p); +GO + +-- TRY_CAST with invalid conversion (returns NULL) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT); +GO + +-- ISNULL / COALESCE / NULLIF + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'prefix%', 'fallback'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, NULL, N'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(Col, 'fallback'); +GO + +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(@p, 'fallback'); +GO + +DECLARE @p NVARCHAR(50) = NULL; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(@p, N'prefix%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'prefix%', 'something else'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match'); +GO + +-- Cross-datatype combinations (const patterns) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +GO + +-- NOT LIKE variants (VARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO + +-- NOT LIKE (NVARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO + +-- NOT LIKE (CHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO + +-- Non-const patterns + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(Col AS CHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE Col; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(Col, '%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE REPLACE(Col, '_', '%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE SUBSTRING(Col, 1, 3) + '%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LEFT(Col, 5) + '%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (Col + '%'); +GO + +-- Non-const with CONVERT + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col); +GO + +-- NULL handling + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)); +GO + +-- Special characters and ESCAPE (VARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'!%something' ESCAPE '!'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'abc!%%' ESCAPE '!'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO + +-- ESCAPE (NVARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO + +-- ESCAPE (CHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO + +-- Unicode and accented characters + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'rés%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'straße'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'caf%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'caf%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'résumé'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'straße'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'rés%'; +GO + +-- Boundary cases (VARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N''; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces '; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing '; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO + +-- Boundary cases (NVARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N''; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'a'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO + +-- Boundary cases (CHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N''; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'a'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'_'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' spaces '; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' lead%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'trailing '; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO + +-- Variables and parameters + +DECLARE @pattern VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +GO + +DECLARE @pattern NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +GO + +DECLARE @pattern VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@pattern AS NVARCHAR(50)); +GO + +DECLARE @pattern NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @pattern); +GO + +DECLARE @pattern VARCHAR(50) = 'test'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern + '%'; +GO + +-- Expression patterns — Constant foldable + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH'); +GO + +-- Function on LHS — Blocks index + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE UPPER(Col) LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LOWER(Col) LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LEFT(Col, 10) LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE RTRIM(Col) LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE REPLACE(Col, ' ', '') LIKE N'exactmatch'; +GO + +-- Case sensitivity + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'aAbBcCdDeE'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO + +-- Covering index and scan variations + +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO + +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO + +SELECT CASE WHEN EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%') THEN 1 ELSE 0 END; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'straße'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO + +-- Multiple LIKE conditions + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id > 5; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id BETWEEN 1 AND 10; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col IS NOT NULL; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id IN (1, 2, 3, 4, 5); +GO + +-- LIKE in different query contexts + +SELECT COUNT(*) +FROM BABEL_5966_TestLikeCollation_CI_AS t1 +JOIN BABEL_5966_TestLikeCollation_CI_AS t2 ON t1.Id = t2.Id +WHERE t1.Col LIKE N'prefix%'; +GO + +SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE N'pre%'; +GO + +SELECT COUNT(CASE WHEN Col LIKE N'prefix%' THEN 1 END) FROM BABEL_5966_TestLikeCollation_CI_AS; +GO + +SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' ORDER BY Col; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id IN ( + SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS t1 +WHERE EXISTS ( + SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 + WHERE t2.Col LIKE N'prefix%' AND t2.Id = t1.Id +); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1); +GO + +-- CI_AS collation (VARCHAR) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col; +GO + +-- CS_AS collation (VARCHAR) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'caf%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE Col; +GO + +-- CI_AI collation (VARCHAR) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'résumé'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'res%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE Col; +GO + +-- CS_AI collation (VARCHAR) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'res%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE Col; +GO + +-- Cross-collation via COLLATE clause + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CS_AI; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE (N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AS); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO + +-- NVARCHAR columns with all collations + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO + +-- CHAR columns with all collations + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE Col; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'résumé'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'cafe'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'naive'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE Col; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'résumé'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE Col; +GO + +-- Cross-datatype with collations + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'café'; +GO + +-- Safety tests for evaluate_expr + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col); +GO + +DECLARE @p VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @p); +GO + +DECLARE @p NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @p); +GO + +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@p AS VARCHAR(50)); +GO + +DECLARE @p VARCHAR(50) = 'test'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p + '%'; +GO + +-- Volatile functions +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), NEWID()); +GO + +-- Subquery pattern +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1); +GO + +SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE 'pre%'; +GO + +-- CHAR(N) / NCHAR(N) Pattern Tests + +SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +GO + +SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO + +SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)); +GO + +SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)); +GO + +SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)); +GO + +SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)); +GO + +SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)); +GO + +SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO + +SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)); +GO + +SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO + +SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO + +SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)); +GO + +SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match'); +GO + +SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%'); +GO + +SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)); +GO + +SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)); +GO + +SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +-- Views + +SELECT COUNT(*) FROM BABEL_5966_vw_like_exact; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_suffix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_contains; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_single_char; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_not_like; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_not_like_exact; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_exact; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_suffix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_exact; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_prefix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_suffix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_or; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_and; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_pct; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_underscore; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode_prefix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_varchar; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_nvarchar; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_char; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as_prefix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as_prefix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai_prefix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai_prefix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nested; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_with_id; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%'; +GO + +-- Procedures + +EXEC BABEL_5966_sp_like_exact_const; +GO + +EXEC BABEL_5966_sp_like_prefix_const; +GO + +EXEC BABEL_5966_sp_like_suffix_const; +GO + +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +GO + +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +GO + +EXEC BABEL_5966_sp_like_varchar_param '%match'; +GO + +EXEC BABEL_5966_sp_like_varchar_param '%'; +GO + +EXEC BABEL_5966_sp_like_varchar_param NULL; +GO + +EXEC BABEL_5966_sp_like_varchar_param ''; +GO + +EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'%data%'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'café'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'caf%'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%'; +GO + +EXEC BABEL_5966_sp_like_all_types N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_all_types N'exact match'; +GO + +EXEC BABEL_5966_sp_like_all_types N'%match'; +GO + +EXEC BABEL_5966_sp_like_all_types N'café'; +GO + +EXEC BABEL_5966_sp_not_like_param N'zzz%'; +GO + +EXEC BABEL_5966_sp_not_like_param N'prefix%'; +GO + +EXEC BABEL_5966_sp_not_like_param N'exact match'; +GO + +EXEC BABEL_5966_sp_like_escape N'100!%done', '!'; +GO + +EXEC BABEL_5966_sp_like_escape N'under!_score', '!'; +GO + +EXEC BABEL_5966_sp_like_dynamic 'prefix'; +GO + +EXEC BABEL_5966_sp_like_dynamic 'test'; +GO + +EXEC BABEL_5966_sp_like_dynamic 'exact'; +GO + +EXEC BABEL_5966_sp_like_dynamic 'zzz'; +GO + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT; +SELECT @result AS output_prefix; +GO + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT; +SELECT @result AS output_exact; +GO + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT; +SELECT @result AS output_suffix; +GO + +EXEC BABEL_5966_sp_like_all_collations N'exact match'; +GO + +EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH'; +GO + +EXEC BABEL_5966_sp_like_all_collations N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_all_collations N'PREFIX%'; +GO + +EXEC BABEL_5966_sp_like_all_collations N'café'; +GO + +EXEC BABEL_5966_sp_like_all_collations N'resume'; +GO + +EXEC BABEL_5966_sp_like_nvar_collations N'exact match'; +GO + +EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH'; +GO + +EXEC BABEL_5966_sp_like_nvar_collations N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_nvar_collations N'resume'; +GO + +EXEC BABEL_5966_sp_like_char_collations N'exact match'; +GO + +EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH'; +GO + +EXEC BABEL_5966_sp_like_char_collations N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_char_collations N'café'; +GO + +EXEC BABEL_5966_sp_like_with_cast 'exact match'; +GO + +EXEC BABEL_5966_sp_like_with_cast 'prefix%'; +GO + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%'; +GO + +EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match'; +GO + +EXEC BABEL_5966_sp_like_subquery N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_subquery N'exact match'; +GO + +EXEC BABEL_5966_sp_like_exists N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_exists N'exact match'; +GO + +EXEC BABEL_5966_sp_like_top N'prefix%', 3; +GO + +EXEC BABEL_5966_sp_like_top N'zzz%', 5; +GO + +-- Repeated execution +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +EXEC BABEL_5966_sp_like_varchar_param '%match'; +EXEC BABEL_5966_sp_like_varchar_param 'test%'; +EXEC BABEL_5966_sp_like_varchar_param 'a%'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'test%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'a%'; +GO + +SET babelfish_showplan_all OFF; +GO + +-- Result correctness + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%data%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO + +-- Cross-type + +SELECT COUNT(*) AS varchar_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS char_nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nvarchar_plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +GO + +SELECT COUNT(*) AS varchar_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS varchar_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS nvarchar_varchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nvarchar_nvarchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS char_varchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS char_nvarchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) AS varchar_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS varchar_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS varchar_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS nvarchar_varchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nvarchar_nvarchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nvarchar_char FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS char_varchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS char_nvarchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS char_char FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO + +-- CAST/CONVERT patterns + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +SELECT COUNT(*) AS cast_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS convert_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match'); +SELECT COUNT(*) AS convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +SELECT COUNT(*) AS nested_cast FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +SELECT COUNT(*) AS triple_cast FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)); +GO + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +SELECT COUNT(*) AS convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS try_cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS try_cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS try_convert_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match'); +SELECT COUNT(*) AS try_convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS try_cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +SELECT COUNT(*) AS try_convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +SELECT COUNT(*) AS try_cast FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)); +GO +SELECT COUNT(*) AS tc_result FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), N'exact match'); +GO + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +SELECT COUNT(*) AS try_cast FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +GO +SELECT COUNT(*) AS try_c FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO + +-- TRY_CAST returning NULL (invalid conversion) +SELECT COUNT(*) AS try_cast_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT); +GO + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS isnull_first FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback'); +SELECT COUNT(*) AS isnull_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match'); +SELECT COUNT(*) AS coalesce_first FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback'); +SELECT COUNT(*) AS coalesce_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'exact match'); +SELECT COUNT(*) AS nullif_diff FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else'); +GO + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS isnull_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%'); +SELECT COUNT(*) AS coalesce_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%'); +GO + +-- NULLIF returns NULL when args match +SELECT COUNT(*) AS nullif_same FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match'); +GO + +-- ISNULL with all NULLs +SELECT COUNT(*) AS isnull_both_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, NULL); +GO + +-- Special characters + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '100!%done' ESCAPE '!'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'under!_score' ESCAPE '!'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'back\slash'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'single''quote'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO + +-- Unicode/accented + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'résumé'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'straße'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'straße'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'naïve'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'naïve'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'caf%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'rés%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%'; +GO + +-- Case sensitivity + +SELECT COUNT(*) AS lower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nlower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nupper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) AS lower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'PREFIX%'; +SELECT COUNT(*) AS nlower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS nupper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO + +-- NULL handling + +SELECT COUNT(*) AS like_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL; +GO + +SELECT COUNT(*) AS not_like_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL; +GO + +SELECT COUNT(*) AS cast_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)); +GO + +-- Boundary cases + +SELECT COUNT(*) AS empty_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ''; +SELECT COUNT(*) AS empty_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N''; +GO + +SELECT COUNT(*) AS single_a_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'a'; +SELECT COUNT(*) AS single_a_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO + +SELECT COUNT(*) AS underscore_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '_'; +SELECT COUNT(*) AS underscore_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_'; +GO + +SELECT COUNT(*) AS pct_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%'; +SELECT COUNT(*) AS pct_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO + +SELECT COUNT(*) AS spaces_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ' spaces '; +SELECT COUNT(*) AS spaces_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces '; +GO + +SELECT COUNT(*) AS trailing_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'trailing '; +SELECT COUNT(*) AS trailing_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing '; +GO + +SELECT COUNT(*) AS leading_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ' lead%'; +SELECT COUNT(*) AS leading_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%'; +GO + +SELECT COUNT(*) AS nonexist_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'nonexistent_value_xyz'; +SELECT COUNT(*) AS nonexist_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO + +-- Collation CI_AS + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume'; +GO + +-- Collation CS_AS + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO + +-- Collation CI_AI + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'cafe'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'naive'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive'; +GO + +-- Collation CS_AI + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'résumé'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'RESUME'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO + +-- NOT LIKE with collations + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO + +-- Variables + +DECLARE @v VARCHAR(50) = 'exact match'; +DECLARE @n NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO + +DECLARE @v VARCHAR(50) = 'prefix%'; +DECLARE @n NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO + +DECLARE @v VARCHAR(50) = '%match'; +DECLARE @n NVARCHAR(50) = N'%match'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO + +-- Expression patterns + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS concat_n FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match'; +SELECT COUNT(*) AS fn_concat FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match'); +GO + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS upper_fn FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match'); +GO + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS lower_fn FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH'); +GO + +-- Multiple conditions + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' AND Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' OR Col LIKE 'test%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' AND Col LIKE '%abc'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc'; +GO + +-- NVARCHAR column + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +-- CHAR column + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +-- NVARCHAR collation tables + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume'; +GO + +-- CHAR collation tables + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO + +-- Cross-collation COLLATE clause + +SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS ci_as_cs_collate FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO + +SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cs_as_ci_collate FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO + +SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS ci_as_ai_collate FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO + +-- CHAR(N) / NCHAR(N) Pattern Tests + +-- CHAR pattern exact match — should NOT match (trailing spaces) +SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +-- CHAR pattern same length — should match (no padding) +SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +GO + +-- Compare: CHAR(11) should match, CHAR(20) should NOT +SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +-- CHAR pattern with wildcard at end — should still work +SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO + +-- CHAR pattern with large padding +SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)); +GO + +-- CHAR(1) pattern +SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)); +GO + +-- CHAR(10) with single char — padded with 9 spaces +SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)); +GO + +-- CHAR(1) with wildcard +SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)); +GO + +-- CHAR(10) with wildcard — becomes '% ' +SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)); +GO + +-- NOT LIKE with CHAR pattern +SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)); +GO + +-- NVARCHAR column with CHAR pattern +SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +-- CHAR column with CHAR pattern (same length as column) +SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO + +-- CHAR column with CHAR pattern (different length) +SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +-- CHAR pattern with leading wildcard +SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)); +GO + +-- CHAR pattern with middle wildcard +SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)); +GO + +-- NCHAR patterns +SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO + +SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO + +SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)); +GO + +-- CHAR pattern with CONVERT +SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match'); +GO + +SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%'); +GO + +-- Nested CHAR casts +SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)); +GO + +SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)); +GO + +-- CHAR pattern across collations +SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +-- Views + +SELECT COUNT(*) AS vw_exact_varchar FROM BABEL_5966_vw_like_exact; +GO + +SELECT COUNT(*) AS vw_prefix_varchar FROM BABEL_5966_vw_like_prefix; +GO + +SELECT COUNT(*) AS vw_suffix_varchar FROM BABEL_5966_vw_like_suffix; +GO + +SELECT COUNT(*) AS vw_contains_varchar FROM BABEL_5966_vw_like_contains; +GO + +SELECT COUNT(*) AS vw_single_char_varchar FROM BABEL_5966_vw_like_single_char; +GO + +SELECT COUNT(*) AS vw_not_like FROM BABEL_5966_vw_not_like; +GO + +SELECT COUNT(*) AS vw_not_like_exact FROM BABEL_5966_vw_not_like_exact; +GO + +SELECT COUNT(*) AS vw_exact_nvarchar FROM BABEL_5966_vw_like_nvar_exact; +GO + +SELECT COUNT(*) AS vw_prefix_nvarchar FROM BABEL_5966_vw_like_nvar_prefix; +GO + +SELECT COUNT(*) AS vw_suffix_nvarchar FROM BABEL_5966_vw_like_nvar_suffix; +GO + +SELECT COUNT(*) AS vw_exact_char FROM BABEL_5966_vw_like_char_exact; +GO + +SELECT COUNT(*) AS vw_prefix_char FROM BABEL_5966_vw_like_char_prefix; +GO + +SELECT COUNT(*) AS vw_suffix_char FROM BABEL_5966_vw_like_char_suffix; +GO + +SELECT COUNT(*) AS vw_or FROM BABEL_5966_vw_like_or; +GO + +SELECT COUNT(*) AS vw_and FROM BABEL_5966_vw_like_and; +GO + +SELECT COUNT(*) AS vw_mixed FROM BABEL_5966_vw_like_and; +GO + +SELECT COUNT(*) AS vw_escape_pct FROM BABEL_5966_vw_like_escape_pct; +GO + +SELECT COUNT(*) AS vw_escape_underscore FROM BABEL_5966_vw_like_escape_underscore; +GO + +SELECT COUNT(*) AS vw_unicode FROM BABEL_5966_vw_like_unicode; +GO + +SELECT COUNT(*) AS vw_unicode_prefix FROM BABEL_5966_vw_like_unicode_prefix; +GO + +SELECT COUNT(*) AS vw_cast_varchar FROM BABEL_5966_vw_like_cast_varchar; +GO + +SELECT COUNT(*) AS vw_cast_nvarchar FROM BABEL_5966_vw_like_cast_nvarchar; +GO + +-- CHAR(20) pattern: should return 0 (trailing spaces, no match) +SELECT COUNT(*) AS vw_cast_char FROM BABEL_5966_vw_like_cast_char; +GO + +SELECT COUNT(*) AS vw_ci_as FROM BABEL_5966_vw_like_ci_as; +GO + +SELECT COUNT(*) AS vw_cs_as FROM BABEL_5966_vw_like_cs_as; +GO + +SELECT COUNT(*) AS vw_ci_ai FROM BABEL_5966_vw_like_ci_ai; +GO + +SELECT COUNT(*) AS vw_cs_ai FROM BABEL_5966_vw_like_cs_ai; +GO + +SELECT COUNT(*) AS vw_ci_as_prefix FROM BABEL_5966_vw_like_ci_as_prefix; +GO + +SELECT COUNT(*) AS vw_cs_as_prefix FROM BABEL_5966_vw_like_cs_as_prefix; +GO + +SELECT COUNT(*) AS vw_ci_ai_prefix FROM BABEL_5966_vw_like_ci_ai_prefix; +GO + +SELECT COUNT(*) AS vw_cs_ai_prefix FROM BABEL_5966_vw_like_cs_ai_prefix; +GO + +SELECT COUNT(*) AS vw_nested FROM BABEL_5966_vw_like_nested; +GO + +SELECT COUNT(*) AS vw_with_id FROM BABEL_5966_vw_like_with_id; +GO + +SELECT COUNT(*) AS vw_prefix_filter FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%'; +GO + +SELECT COUNT(*) AS vw_nvar_filter FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%'; +GO + +SELECT COUNT(*) AS vw_join FROM BABEL_5966_vw_like_prefix v +JOIN BABEL_5966_vw_like_nvar_prefix n ON v.Id = n.Id; +GO + +-- Procedures + +EXEC BABEL_5966_sp_like_exact_const; +GO + +EXEC BABEL_5966_sp_like_prefix_const; +GO + +EXEC BABEL_5966_sp_like_suffix_const; +GO + +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +GO + +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +GO + +EXEC BABEL_5966_sp_like_varchar_param '%match'; +GO + +EXEC BABEL_5966_sp_like_varchar_param '%'; +GO + +EXEC BABEL_5966_sp_like_varchar_param NULL; +GO + +EXEC BABEL_5966_sp_like_varchar_param ''; +GO + +EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'%data%'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'café'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'caf%'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%'; +GO + +EXEC BABEL_5966_sp_like_all_types N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_all_types N'exact match'; +GO + +EXEC BABEL_5966_sp_like_all_types N'%match'; +GO + +EXEC BABEL_5966_sp_like_all_types N'café'; +GO + +EXEC BABEL_5966_sp_not_like_param N'zzz%'; +GO + +EXEC BABEL_5966_sp_not_like_param N'prefix%'; +GO + +EXEC BABEL_5966_sp_not_like_param N'exact match'; +GO + +EXEC BABEL_5966_sp_like_escape N'100!%done', '!'; +GO + +EXEC BABEL_5966_sp_like_escape N'under!_score', '!'; +GO + +EXEC BABEL_5966_sp_like_dynamic 'prefix'; +GO + +EXEC BABEL_5966_sp_like_dynamic 'test'; +GO + +EXEC BABEL_5966_sp_like_dynamic 'exact'; +GO + +EXEC BABEL_5966_sp_like_dynamic 'zzz'; +GO + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT; +SELECT @result AS output_prefix; +GO + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT; +SELECT @result AS output_exact; +GO + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT; +SELECT @result AS output_suffix; +GO + +EXEC BABEL_5966_sp_like_all_collations N'exact match'; +GO + +EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH'; +GO + +EXEC BABEL_5966_sp_like_all_collations N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_all_collations N'PREFIX%'; +GO + +EXEC BABEL_5966_sp_like_all_collations N'café'; +GO + +EXEC BABEL_5966_sp_like_all_collations N'resume'; +GO + +EXEC BABEL_5966_sp_like_nvar_collations N'exact match'; +GO + +EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH'; +GO + +EXEC BABEL_5966_sp_like_nvar_collations N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_nvar_collations N'resume'; +GO + +EXEC BABEL_5966_sp_like_char_collations N'exact match'; +GO + +EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH'; +GO + +EXEC BABEL_5966_sp_like_char_collations N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_char_collations N'café'; +GO + +EXEC BABEL_5966_sp_like_with_cast 'exact match'; +GO + +EXEC BABEL_5966_sp_like_with_cast 'prefix%'; +GO + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%'; +GO + +EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match'; +GO + +EXEC BABEL_5966_sp_like_subquery N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_subquery N'exact match'; +GO + +EXEC BABEL_5966_sp_like_exists N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_exists N'exact match'; +GO + +EXEC BABEL_5966_sp_like_top N'prefix%', 3; +GO + +EXEC BABEL_5966_sp_like_top N'zzz%', 5; +GO + +-- Repeated execution +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +EXEC BABEL_5966_sp_like_varchar_param '%match'; +EXEC BABEL_5966_sp_like_varchar_param 'test%'; +EXEC BABEL_5966_sp_like_varchar_param 'a%'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'test%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'a%'; +GO + +-- sp_executesql + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'exact match'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'prefix%'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'prefix%'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'%match'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'prefix%'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'exact match'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'prefix%'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = NULL; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'EXACT MATCH'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'EXACT MATCH'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'resume'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'resume'; +GO + + +-- CHECK Constraints + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('valid_data'); +GO + +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('valid'); +GO + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('invalid_data'); +GO + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_nprefix (Col) VALUES ('valid_data'); +GO + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_nprefix (Col) VALUES ('invalid_data'); +GO + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('good_data'); +GO + +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('ok_data'); +GO + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('bad_data'); +GO + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('100%done'); +GO + +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('100%almost'); +GO + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('200%done'); +GO + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('is_valid'); +GO + +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('also_valid'); +GO + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('invalid'); +GO + +SELECT * FROM BABEL_5966_TestLikeCheck_prefix; +GO + +SELECT * FROM BABEL_5966_TestLikeCheck_nprefix; +GO + +SELECT * FROM BABEL_5966_TestLikeCheck_not_like; +GO + +SELECT * FROM BABEL_5966_TestLikeCheck_escape; +GO + +SELECT * FROM BABEL_5966_TestLikeCheck_suffix; +GO + +-- UPDATE / DELETE + +UPDATE BABEL_5966_TestLikeCollation_CI_AS SET Col = Col WHERE Col LIKE N'prefix%'; +SELECT @@ROWCOUNT AS update_prefix; +GO + +UPDATE BABEL_5966_TestLikeCollation_CI_AS SET Col = Col WHERE Col NOT LIKE N'zzz%'; +SELECT @@ROWCOUNT AS update_not_zzz; +GO + +DELETE FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_xyz_abc%'; +SELECT @@ROWCOUNT AS delete_none; +GO + +exec sp_babelfish_configure 'explain_costs', 'off'; +GO + +SELECT set_config('enable_bitmapscan', 'on', false); +GO diff --git a/test/JDBC/input/like_op_index_scan-vu-cleanup.sql b/test/JDBC/input/like_op_index_scan-vu-cleanup.sql new file mode 100644 index 00000000000..43cac8bf45a --- /dev/null +++ b/test/JDBC/input/like_op_index_scan-vu-cleanup.sql @@ -0,0 +1,85 @@ +DROP VIEW BABEL_5966_vw_like_nested; +DROP VIEW BABEL_5966_vw_like_exact; +DROP VIEW BABEL_5966_vw_like_prefix; +DROP VIEW BABEL_5966_vw_like_suffix; +DROP VIEW BABEL_5966_vw_like_contains; +DROP VIEW BABEL_5966_vw_like_single_char; +DROP VIEW BABEL_5966_vw_not_like; +DROP VIEW BABEL_5966_vw_not_like_exact; +DROP VIEW BABEL_5966_vw_like_nvar_exact; +DROP VIEW BABEL_5966_vw_like_nvar_prefix; +DROP VIEW BABEL_5966_vw_like_nvar_suffix; +DROP VIEW BABEL_5966_vw_like_char_exact; +DROP VIEW BABEL_5966_vw_like_char_prefix; +DROP VIEW BABEL_5966_vw_like_char_suffix; +DROP VIEW BABEL_5966_vw_like_or; +DROP VIEW BABEL_5966_vw_like_and; +DROP VIEW BABEL_5966_vw_like_escape_pct; +DROP VIEW BABEL_5966_vw_like_escape_underscore; +DROP VIEW BABEL_5966_vw_like_unicode; +DROP VIEW BABEL_5966_vw_like_unicode_prefix; +DROP VIEW BABEL_5966_vw_like_cast_varchar; +DROP VIEW BABEL_5966_vw_like_cast_nvarchar; +DROP VIEW BABEL_5966_vw_like_cast_char; +DROP VIEW BABEL_5966_vw_like_ci_as; +DROP VIEW BABEL_5966_vw_like_cs_as; +DROP VIEW BABEL_5966_vw_like_ci_ai; +DROP VIEW BABEL_5966_vw_like_cs_ai; +DROP VIEW BABEL_5966_vw_like_ci_as_prefix; +DROP VIEW BABEL_5966_vw_like_cs_as_prefix; +DROP VIEW BABEL_5966_vw_like_ci_ai_prefix; +DROP VIEW BABEL_5966_vw_like_cs_ai_prefix; +DROP VIEW BABEL_5966_vw_like_with_id; +GO + +DROP PROCEDURE BABEL_5966_sp_like_exact_const; +DROP PROCEDURE BABEL_5966_sp_like_prefix_const; +DROP PROCEDURE BABEL_5966_sp_like_suffix_const; +DROP PROCEDURE BABEL_5966_sp_like_varchar_param; +DROP PROCEDURE BABEL_5966_sp_like_nvarchar_param; +DROP PROCEDURE BABEL_5966_sp_like_all_types; +DROP PROCEDURE BABEL_5966_sp_not_like_param; +DROP PROCEDURE BABEL_5966_sp_like_escape; +DROP PROCEDURE BABEL_5966_sp_like_dynamic; +DROP PROCEDURE BABEL_5966_sp_like_output; +DROP PROCEDURE BABEL_5966_sp_like_all_collations; +DROP PROCEDURE BABEL_5966_sp_like_nvar_collations; +DROP PROCEDURE BABEL_5966_sp_like_char_collations; +DROP PROCEDURE BABEL_5966_sp_like_with_cast; +DROP PROCEDURE BABEL_5966_sp_like_multi_condition; +DROP PROCEDURE BABEL_5966_sp_like_subquery; +DROP PROCEDURE BABEL_5966_sp_like_exists; +DROP PROCEDURE BABEL_5966_sp_like_top; +GO + +DROP TABLE BABEL_5966_TestLikeCollation_CI_AS; +GO +DROP TABLE BABEL_5966_TestLikeCollation_CS_AS; +GO +DROP TABLE BABEL_5966_TestLikeCollation_CI_AI; +GO +DROP TABLE BABEL_5966_TestLikeCollation_CS_AI; +GO +DROP TABLE BABEL_5966_TestLikeNVarCollation_CI_AS; +GO +DROP TABLE BABEL_5966_TestLikeNVarCollation_CS_AS; +GO +DROP TABLE BABEL_5966_TestLikeNVarCollation_CI_AI; +GO +DROP TABLE BABEL_5966_TestLikeNVarCollation_CS_AI; +GO +DROP TABLE BABEL_5966_TestLikeCharCollation_CI_AS; +GO +DROP TABLE BABEL_5966_TestLikeCharCollation_CS_AS; +GO +DROP TABLE BABEL_5966_TestLikeCharCollation_CI_AI; +GO +DROP TABLE BABEL_5966_TestLikeCharCollation_CS_AI; +GO + +DROP TABLE BABEL_5966_TestLikeCheck_prefix; +DROP TABLE BABEL_5966_TestLikeCheck_nprefix; +DROP TABLE BABEL_5966_TestLikeCheck_not_like; +DROP TABLE BABEL_5966_TestLikeCheck_escape; +DROP TABLE BABEL_5966_TestLikeCheck_suffix; +GO diff --git a/test/JDBC/input/like_op_index_scan-vu-prepare.sql b/test/JDBC/input/like_op_index_scan-vu-prepare.sql new file mode 100644 index 00000000000..e8d5f3b0247 --- /dev/null +++ b/test/JDBC/input/like_op_index_scan-vu-prepare.sql @@ -0,0 +1,466 @@ +CREATE TABLE BABEL_5966_TestLikeCollation_CI_AS ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeCollation_CS_AS ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeCollation_CI_AI ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AI +); +GO + +CREATE TABLE BABEL_5966_TestLikeCollation_CS_AI ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AI +); +GO + +CREATE INDEX BABEL_5966_idx_ci_as ON BABEL_5966_TestLikeCollation_CI_AS(Col); +CREATE INDEX BABEL_5966_idx_cs_as ON BABEL_5966_TestLikeCollation_CS_AS(Col); +GO + +INSERT INTO BABEL_5966_TestLikeCollation_CI_AS (Col) +VALUES ('exact match'), ('EXACT MATCH'), ('Exact Match'), + ('prefix_abc'), ('PREFIX_ABC'), ('Prefix_Abc'), + ('prefix_def'), ('prefix_ghi'), + ('something else'), ('another value'), + ('test data 1'), ('test data 2'), ('test data 3'), + ('UPPER CASE'), ('mixed Case'), + ('café'), ('CAFÉ'), ('Café'), + ('résumé'), ('RÉSUMÉ'), ('Résumé'), + ('naïve'), ('NAÏVE'), ('Naïve'), + ('resume'), ('RESUME'), ('Resume'), + ('naive'), ('NAIVE'), ('Naive'), + ('straße'), ('STRASSE'), ('Straße'), + ('a'), ('A'), ('ab'), ('abc'), ('ABC'), + ('100%done'), ('under_score'), + ('back\slash'), ('single''quote'), + (' spaces '), ('trailing '), (' leading'), + ('aaaaaaaaaa'), ('AAAAAAAAAA'), ('aAbBcCdDeE'); +GO + +INSERT INTO BABEL_5966_TestLikeCollation_CI_AS (Col) +SELECT 'zzz_filler_' + CAST(n AS VARCHAR(10)) +FROM generate_series(1, 20000) AS n; +GO + +INSERT INTO BABEL_5966_TestLikeCollation_CS_AS (Col) +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS; +GO + +INSERT INTO BABEL_5966_TestLikeCollation_CI_AI (Col) +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS; +GO + +INSERT INTO BABEL_5966_TestLikeCollation_CS_AI (Col) +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS; +GO + +CREATE TABLE BABEL_5966_TestLikeNVarCollation_CI_AS ( + Id INT IDENTITY PRIMARY KEY, + Col NVARCHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeNVarCollation_CS_AS ( + Id INT IDENTITY PRIMARY KEY, + Col NVARCHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeNVarCollation_CI_AI ( + Id INT IDENTITY PRIMARY KEY, + Col NVARCHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AI +); +GO + +CREATE TABLE BABEL_5966_TestLikeNVarCollation_CS_AI ( + Id INT IDENTITY PRIMARY KEY, + Col NVARCHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AI +); +GO + +CREATE INDEX BABEL_5966_idx_nvar_ci_as ON BABEL_5966_TestLikeNVarCollation_CI_AS(Col); +CREATE INDEX BABEL_5966_idx_nvar_cs_as ON BABEL_5966_TestLikeNVarCollation_CS_AS(Col); +GO + +INSERT INTO BABEL_5966_TestLikeNVarCollation_CI_AS (Col) +VALUES (N'exact match'), (N'EXACT MATCH'), (N'Exact Match'), + (N'prefix_abc'), (N'PREFIX_ABC'), + (N'prefix_def'), (N'prefix_ghi'), + (N'something else'), (N'another value'), + (N'test data 1'), (N'test data 2'), (N'test data 3'), + (N'café'), (N'CAFÉ'), + (N'résumé'), (N'RÉSUMÉ'), (N'resume'), (N'RESUME'), + (N'naïve'), (N'NAÏVE'), (N'naive'), (N'NAIVE'), + (N'straße'), (N'STRASSE'), + (N'a'), (N'A'), (N'ab'), (N'abc'), (N'ABC'), + (N'100%done'), (N'under_score'), + (N'back\slash'), (N'single''quote'), + (N' spaces '), (N'trailing '), (N' leading'), + (N'aaaaaaaaaa'), (N'AAAAAAAAAA'), (N'aAbBcCdDeE'); +GO + +INSERT INTO BABEL_5966_TestLikeNVarCollation_CI_AS (Col) +SELECT N'zzz_filler_' + CAST(n AS NVARCHAR(10)) +FROM generate_series(1, 20000) AS n; +GO + +INSERT INTO BABEL_5966_TestLikeNVarCollation_CS_AS (Col) SELECT Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS; +INSERT INTO BABEL_5966_TestLikeNVarCollation_CI_AI (Col) SELECT Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS; +INSERT INTO BABEL_5966_TestLikeNVarCollation_CS_AI (Col) SELECT Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS; +GO + +CREATE TABLE BABEL_5966_TestLikeCharCollation_CI_AS ( + Id INT IDENTITY PRIMARY KEY, + Col CHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeCharCollation_CS_AS ( + Id INT IDENTITY PRIMARY KEY, + Col CHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AS +); +GO + +CREATE TABLE BABEL_5966_TestLikeCharCollation_CI_AI ( + Id INT IDENTITY PRIMARY KEY, + Col CHAR(100) COLLATE SQL_Latin1_General_CP1_CI_AI +); +GO + +CREATE TABLE BABEL_5966_TestLikeCharCollation_CS_AI ( + Id INT IDENTITY PRIMARY KEY, + Col CHAR(100) COLLATE SQL_Latin1_General_CP1_CS_AI +); +GO + +CREATE INDEX BABEL_5966_idx_char_ci_as ON BABEL_5966_TestLikeCharCollation_CI_AS(Col); +CREATE INDEX BABEL_5966_idx_char_cs_as ON BABEL_5966_TestLikeCharCollation_CS_AS(Col); +GO + +INSERT INTO BABEL_5966_TestLikeCharCollation_CI_AS (Col) +VALUES ('exact match'), ('EXACT MATCH'), ('Exact Match'), + ('prefix_abc'), ('PREFIX_ABC'), ('Prefix_Abc'), + ('prefix_def'), ('prefix_ghi'), + ('something else'), ('another value'), + ('test data 1'), ('test data 2'), ('test data 3'), + ('café'), ('CAFÉ'), ('Café'), + ('résumé'), ('RÉSUMÉ'), ('Résumé'), + ('naïve'), ('NAÏVE'), ('Naïve'), + ('resume'), ('RESUME'), ('Resume'), + ('naive'), ('NAIVE'), ('Naive'), + ('straße'), ('STRASSE'), ('Straße'), + ('a'), ('A'), ('ab'), ('abc'), ('ABC'), + ('100%done'), ('under_score'), + ('back\slash'), ('single''quote'), + (' spaces '), ('trailing '), (' leading'), + ('aaaaaaaaaa'), ('AAAAAAAAAA'), ('aAbBcCdDeE'); +GO + +INSERT INTO BABEL_5966_TestLikeCharCollation_CI_AS (Col) +SELECT 'zzz_filler_' + CAST(n AS VARCHAR(10)) +FROM generate_series(1, 20000) AS n; +GO + +INSERT INTO BABEL_5966_TestLikeCharCollation_CS_AS (Col) SELECT Col FROM BABEL_5966_TestLikeCharCollation_CI_AS; +INSERT INTO BABEL_5966_TestLikeCharCollation_CI_AI (Col) SELECT Col FROM BABEL_5966_TestLikeCharCollation_CI_AS; +INSERT INTO BABEL_5966_TestLikeCharCollation_CS_AI (Col) SELECT Col FROM BABEL_5966_TestLikeCharCollation_CI_AS; +GO + +-- Views (using CI_AS explicit collation tables) + +CREATE VIEW BABEL_5966_vw_like_exact AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_suffix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +CREATE VIEW BABEL_5966_vw_like_contains AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO + +CREATE VIEW BABEL_5966_vw_like_single_char AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_'; +GO + +CREATE VIEW BABEL_5966_vw_not_like AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'zzz%'; +GO + +CREATE VIEW BABEL_5966_vw_not_like_exact AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_nvar_exact AS +SELECT Id, Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_nvar_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_nvar_suffix AS +SELECT Id, Col FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +CREATE VIEW BABEL_5966_vw_like_char_exact AS +SELECT Id, Col FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_char_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_char_suffix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +CREATE VIEW BABEL_5966_vw_like_or AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS +WHERE Col LIKE N'prefix%' OR Col LIKE N'test%'; +GO + +CREATE VIEW BABEL_5966_vw_like_and AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS +WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc'; +GO + +CREATE VIEW BABEL_5966_vw_like_escape_pct AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO + +CREATE VIEW BABEL_5966_vw_like_escape_underscore AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO + +CREATE VIEW BABEL_5966_vw_like_unicode AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO + +CREATE VIEW BABEL_5966_vw_like_unicode_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO + +CREATE VIEW BABEL_5966_vw_like_cast_varchar AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +CREATE VIEW BABEL_5966_vw_like_cast_nvarchar AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +GO + +CREATE VIEW BABEL_5966_vw_like_cast_char AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +CREATE VIEW BABEL_5966_vw_like_ci_as AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_cs_as AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_ci_ai AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_cs_ai AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match'; +GO + +CREATE VIEW BABEL_5966_vw_like_ci_as_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_cs_as_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_ci_ai_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_cs_ai_prefix AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO + +CREATE VIEW BABEL_5966_vw_like_nested AS +SELECT * FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%'; +GO + +CREATE VIEW BABEL_5966_vw_like_with_id AS +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS +WHERE Col LIKE N'prefix%' AND Id > 0; +GO + +-- Stored Procedures + +CREATE PROCEDURE BABEL_5966_sp_like_exact_const AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_prefix_const AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_suffix_const AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_varchar_param @pattern VARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_nvarchar_param @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_all_types @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS varchar_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS nvarchar_cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS char_cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_not_like_param @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_escape @pattern NVARCHAR(50), @esc CHAR(1) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern ESCAPE @esc; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_dynamic @prefix VARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @prefix + '%'; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_output @pattern NVARCHAR(50), @cnt INT OUTPUT AS +BEGIN + SELECT @cnt = COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_all_collations @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_nvar_collations @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_char_collations @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE @pattern; + SELECT COUNT(*) AS ci_ai FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE @pattern; + SELECT COUNT(*) AS cs_ai FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE @pattern; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_with_cast @val VARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@val AS VARCHAR(50)); + SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@val AS NVARCHAR(50)); +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_multi_condition @p1 NVARCHAR(50), @p2 NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS and_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p1 AND Col LIKE @p2; + SELECT COUNT(*) AS or_cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p1 OR Col LIKE @p2; +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_subquery @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS + WHERE Id IN (SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern); +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_exists @pattern NVARCHAR(50) AS +BEGIN + SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS t1 + WHERE EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 WHERE t2.Col LIKE @pattern AND t2.Id = t1.Id); +END; +GO + +CREATE PROCEDURE BABEL_5966_sp_like_top @pattern NVARCHAR(50), @top INT AS +BEGIN + SELECT TOP(@top) Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern ORDER BY Col; +END; +GO + +-- CHECK Constraints + +CREATE TABLE BABEL_5966_TestLikeCheck_prefix ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(50) CHECK (Col LIKE 'valid%') +); +GO + +CREATE TABLE BABEL_5966_TestLikeCheck_nprefix ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(50) CHECK (Col LIKE N'valid%') +); +GO + +CREATE TABLE BABEL_5966_TestLikeCheck_not_like ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(50) CHECK (Col NOT LIKE 'bad%') +); +GO + +CREATE TABLE BABEL_5966_TestLikeCheck_escape ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(50) CHECK (Col LIKE '100!%%' ESCAPE '!') +); +GO + +CREATE TABLE BABEL_5966_TestLikeCheck_suffix ( + Id INT IDENTITY PRIMARY KEY, + Col VARCHAR(50) CHECK (Col LIKE '%_valid') +); +GO diff --git a/test/JDBC/input/like_op_index_scan-vu-verify.mix b/test/JDBC/input/like_op_index_scan-vu-verify.mix new file mode 100644 index 00000000000..86c8b7fab9f --- /dev/null +++ b/test/JDBC/input/like_op_index_scan-vu-verify.mix @@ -0,0 +1,2699 @@ +-- sla 80000 +-- parallel_query_expected +-- psql +ANALYZE master_dbo.babel_5966_testlikecollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikecollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikecollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikecollation_cs_ai; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikenvarcollation_cs_ai; +ANALYZE master_dbo.babel_5966_testlikecharcollation_ci_as; +ANALYZE master_dbo.babel_5966_testlikecharcollation_cs_as; +ANALYZE master_dbo.babel_5966_testlikecharcollation_ci_ai; +ANALYZE master_dbo.babel_5966_testlikecharcollation_cs_ai; +GO + +-- tsql +SELECT set_config('enable_bitmapscan', 'off', false); +GO + +exec sp_babelfish_configure 'explain_costs', 'off'; +GO + +SET babelfish_showplan_all ON; +GO + +-- Plain literal (VARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%'; +GO + +-- Plain literal (NVARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO + +-- Plain literal (CHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO + +-- N-prefix literal (VARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%abc'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO + +-- N-prefix literal (NVARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +-- N-prefix literal (CHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +-- N-prefix with no extractable prefix + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%else'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%else'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%a%b%c%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_xact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_refix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'___'; +GO + +-- CAST/CONVERT of constants (VARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO + +-- CONVERT (VARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'prefix%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'%match'); +GO + +-- CAST/CONVERT (NVARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO + +-- CAST/CONVERT (CHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NVARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('%match' AS NVARCHAR(50)); +GO + +-- TRY_CAST (VARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('%match' AS NVARCHAR(50)); +GO + +-- TRY_CAST (NVARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST('prefix%' AS NVARCHAR(50)); +GO + +-- TRY_CAST (CHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS NVARCHAR(50)); +GO + +-- TRY_CAST nested + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(TRY_CAST(N'exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +GO + +-- TRY_CONVERT (VARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'prefix%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'%match'); +GO + +-- TRY_CONVERT (NVARCHAR/CHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), 'prefix%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO + +-- TRY_CAST/TRY_CONVERT non-const (col ref) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(Col AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), Col); +GO + +-- TRY_CAST/TRY_CONVERT with parameter + +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(@p AS VARCHAR(50)); +GO + +DECLARE @p NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), @p); +GO + +-- TRY_CAST with invalid conversion (returns NULL) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT); +GO + +-- ISNULL / COALESCE / NULLIF + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'prefix%', 'fallback'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, NULL, N'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(Col, 'fallback'); +GO + +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(@p, 'fallback'); +GO + +DECLARE @p NVARCHAR(50) = NULL; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(@p, N'prefix%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'prefix%', 'something else'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match'); +GO + +-- Cross-datatype combinations (const patterns) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +GO + +-- NOT LIKE variants (VARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO + +-- NOT LIKE (NVARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO + +-- NOT LIKE (CHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO + +-- Non-const patterns + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(Col AS CHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE Col; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(Col, '%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE REPLACE(Col, '_', '%'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE SUBSTRING(Col, 1, 3) + '%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LEFT(Col, 5) + '%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (Col + '%'); +GO + +-- Non-const with CONVERT + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col); +GO + +-- NULL handling + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)); +GO + +-- Special characters and ESCAPE (VARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'!%something' ESCAPE '!'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'abc!%%' ESCAPE '!'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO + +-- ESCAPE (NVARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO + +-- ESCAPE (CHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix___'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'[a-z]%'; +GO + +-- Unicode and accented characters + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'rés%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'straße'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'caf%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'caf%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'résumé'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'straße'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'rés%'; +GO + +-- Boundary cases (VARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N''; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces '; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing '; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO + +-- Boundary cases (NVARCHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N''; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'a'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'_'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO + +-- Boundary cases (CHAR CI_AS) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N''; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'a'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'_'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' spaces '; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N' lead%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'trailing '; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'zzz%'; +GO + +-- Variables and parameters + +DECLARE @pattern VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +GO + +DECLARE @pattern NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern; +GO + +DECLARE @pattern VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@pattern AS NVARCHAR(50)); +GO + +DECLARE @pattern NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @pattern); +GO + +DECLARE @pattern VARCHAR(50) = 'test'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @pattern + '%'; +GO + +-- Expression patterns — Constant foldable + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match'); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH'); +GO + +-- Function on LHS — Blocks index + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE UPPER(Col) LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LOWER(Col) LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE LEFT(Col, 10) LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE RTRIM(Col) LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE REPLACE(Col, ' ', '') LIKE N'exactmatch'; +GO + +-- Case sensitivity + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'aAbBcCdDeE'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO + +-- Covering index and scan variations + +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO + +SELECT Id, Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO + +SELECT CASE WHEN EXISTS (SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%') THEN 1 ELSE 0 END; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'straße'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO + +-- Multiple LIKE conditions + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id > 5; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id BETWEEN 1 AND 10; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col IS NOT NULL; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Id IN (1, 2, 3, 4, 5); +GO + +-- LIKE in different query contexts + +SELECT COUNT(*) +FROM BABEL_5966_TestLikeCollation_CI_AS t1 +JOIN BABEL_5966_TestLikeCollation_CI_AS t2 ON t1.Id = t2.Id +WHERE t1.Col LIKE N'prefix%'; +GO + +SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE N'pre%'; +GO + +SELECT COUNT(CASE WHEN Col LIKE N'prefix%' THEN 1 END) FROM BABEL_5966_TestLikeCollation_CI_AS; +GO + +SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' ORDER BY Col; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id IN ( + SELECT Id FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' +); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS t1 +WHERE EXISTS ( + SELECT 1 FROM BABEL_5966_TestLikeCollation_CI_AS t2 + WHERE t2.Col LIKE N'prefix%' AND t2.Id = t1.Id +); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1); +GO + +-- CI_AS collation (VARCHAR) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE Col; +GO + +-- CS_AS collation (VARCHAR) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'caf%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE Col; +GO + +-- CI_AI collation (VARCHAR) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'résumé'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'res%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE Col; +GO + +-- CS_AI collation (VARCHAR) + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'res%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE Col; +GO + +-- Cross-collation via COLLATE clause + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CS_AI; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE (N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AS); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO + +-- NVARCHAR columns with all collations + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO + +-- CHAR columns with all collations + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE Col; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE Col; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'résumé'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'cafe'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'naive'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE Col; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'résumé'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE CAST(N'exact match' AS VARCHAR(50)); +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE Col; +GO + +-- Cross-datatype with collations + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'café'; +GO + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'café'; +GO + +-- Safety tests for evaluate_expr + +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), Col); +GO + +DECLARE @p VARCHAR(50) = 'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @p); +GO + +DECLARE @p NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), @p); +GO + +DECLARE @p NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(@p AS VARCHAR(50)); +GO + +DECLARE @p VARCHAR(50) = 'test'; +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p + '%'; +GO + +-- Volatile functions +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), NEWID()); +GO + +-- Subquery pattern +SELECT COUNT(*) FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE (SELECT TOP 1 Col FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Id = 1); +GO + +SELECT LEFT(Col, 3) AS prefix, COUNT(*) AS cnt +FROM BABEL_5966_TestLikeCollation_CI_AS +GROUP BY LEFT(Col, 3) +HAVING LEFT(Col, 3) LIKE 'pre%'; +GO + +-- CHAR(N) / NCHAR(N) Pattern Tests + +SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +GO + +SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO + +SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)); +GO + +SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)); +GO + +SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)); +GO + +SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)); +GO + +SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)); +GO + +SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO + +SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)); +GO + +SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO + +SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO + +SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)); +GO + +SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match'); +GO + +SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%'); +GO + +SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)); +GO + +SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)); +GO + +SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +-- Views + +SELECT COUNT(*) FROM BABEL_5966_vw_like_exact; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_suffix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_contains; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_single_char; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_not_like; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_not_like_exact; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_exact; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_suffix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_exact; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_prefix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_char_suffix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_or; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_and; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_pct; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_escape_underscore; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_unicode_prefix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_varchar; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_nvarchar; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cast_char; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_as_prefix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_as_prefix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_ci_ai_prefix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_cs_ai_prefix; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nested; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_with_id; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%'; +GO + +SELECT COUNT(*) FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%'; +GO + +-- Procedures + +EXEC BABEL_5966_sp_like_exact_const; +GO + +EXEC BABEL_5966_sp_like_prefix_const; +GO + +EXEC BABEL_5966_sp_like_suffix_const; +GO + +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +GO + +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +GO + +EXEC BABEL_5966_sp_like_varchar_param '%match'; +GO + +EXEC BABEL_5966_sp_like_varchar_param '%'; +GO + +EXEC BABEL_5966_sp_like_varchar_param NULL; +GO + +EXEC BABEL_5966_sp_like_varchar_param ''; +GO + +EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'%data%'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'café'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'caf%'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%'; +GO + +EXEC BABEL_5966_sp_like_all_types N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_all_types N'exact match'; +GO + +EXEC BABEL_5966_sp_like_all_types N'%match'; +GO + +EXEC BABEL_5966_sp_like_all_types N'café'; +GO + +EXEC BABEL_5966_sp_not_like_param N'zzz%'; +GO + +EXEC BABEL_5966_sp_not_like_param N'prefix%'; +GO + +EXEC BABEL_5966_sp_not_like_param N'exact match'; +GO + +EXEC BABEL_5966_sp_like_escape N'100!%done', '!'; +GO + +EXEC BABEL_5966_sp_like_escape N'under!_score', '!'; +GO + +EXEC BABEL_5966_sp_like_dynamic 'prefix'; +GO + +EXEC BABEL_5966_sp_like_dynamic 'test'; +GO + +EXEC BABEL_5966_sp_like_dynamic 'exact'; +GO + +EXEC BABEL_5966_sp_like_dynamic 'zzz'; +GO + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT; +SELECT @result AS output_prefix; +GO + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT; +SELECT @result AS output_exact; +GO + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT; +SELECT @result AS output_suffix; +GO + +EXEC BABEL_5966_sp_like_all_collations N'exact match'; +GO + +EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH'; +GO + +EXEC BABEL_5966_sp_like_all_collations N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_all_collations N'PREFIX%'; +GO + +EXEC BABEL_5966_sp_like_all_collations N'café'; +GO + +EXEC BABEL_5966_sp_like_all_collations N'resume'; +GO + +EXEC BABEL_5966_sp_like_nvar_collations N'exact match'; +GO + +EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH'; +GO + +EXEC BABEL_5966_sp_like_nvar_collations N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_nvar_collations N'resume'; +GO + +EXEC BABEL_5966_sp_like_char_collations N'exact match'; +GO + +EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH'; +GO + +EXEC BABEL_5966_sp_like_char_collations N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_char_collations N'café'; +GO + +EXEC BABEL_5966_sp_like_with_cast 'exact match'; +GO + +EXEC BABEL_5966_sp_like_with_cast 'prefix%'; +GO + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%'; +GO + +EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match'; +GO + +EXEC BABEL_5966_sp_like_subquery N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_subquery N'exact match'; +GO + +EXEC BABEL_5966_sp_like_exists N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_exists N'exact match'; +GO + +EXEC BABEL_5966_sp_like_top N'prefix%', 3; +GO + +EXEC BABEL_5966_sp_like_top N'zzz%', 5; +GO + +-- Repeated execution +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +EXEC BABEL_5966_sp_like_varchar_param '%match'; +EXEC BABEL_5966_sp_like_varchar_param 'test%'; +EXEC BABEL_5966_sp_like_varchar_param 'a%'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'test%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'a%'; +GO + +SET babelfish_showplan_all OFF; +GO + +-- Result correctness + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%data%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%data%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'%match'; +GO + +-- Cross-type + +SELECT COUNT(*) AS varchar_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS char_nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nvarchar_plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +GO + +SELECT COUNT(*) AS varchar_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS varchar_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS nvarchar_varchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nvarchar_nvarchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS char_varchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS char_nvarchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) AS varchar_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS varchar_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS varchar_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS nvarchar_varchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nvarchar_nvarchar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nvarchar_char FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS char_varchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS char_nvarchar FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS char_char FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO + +-- CAST/CONVERT patterns + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'exact match' AS NVARCHAR(50)); +SELECT COUNT(*) AS cast_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +SELECT COUNT(*) AS convert_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), 'exact match'); +SELECT COUNT(*) AS convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'exact match'); +SELECT COUNT(*) AS nested_cast FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS NVARCHAR(50)) AS VARCHAR(50)); +SELECT COUNT(*) AS triple_cast FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST(CAST(N'exact match' AS VARCHAR(50)) AS NVARCHAR(50)) AS VARCHAR(50)); +GO + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(N'prefix%' AS NVARCHAR(50)); +SELECT COUNT(*) AS convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(VARCHAR(50), N'prefix%'); +GO + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS try_cast_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS try_cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS VARCHAR(50)); +SELECT COUNT(*) AS try_convert_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), 'exact match'); +SELECT COUNT(*) AS try_convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'exact match'); +GO + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS try_cast_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +SELECT COUNT(*) AS try_convert_nvarchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +GO +SELECT COUNT(*) AS try_cast FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CAST(N'exact match' AS NVARCHAR(50)); +GO +SELECT COUNT(*) AS tc_result FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE TRY_CONVERT(NVARCHAR(50), N'exact match'); +GO + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +GO +SELECT COUNT(*) AS try_cast FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CAST(N'prefix%' AS VARCHAR(50)); +GO +SELECT COUNT(*) AS try_c FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE TRY_CONVERT(VARCHAR(50), N'prefix%'); +GO + +-- TRY_CAST returning NULL (invalid conversion) +SELECT COUNT(*) AS try_cast_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE TRY_CAST('not a number' AS INT); +GO + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS isnull_first FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(N'exact match', 'fallback'); +SELECT COUNT(*) AS isnull_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'exact match'); +SELECT COUNT(*) AS coalesce_first FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(N'exact match', 'fallback'); +SELECT COUNT(*) AS coalesce_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'exact match'); +SELECT COUNT(*) AS nullif_diff FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', 'something else'); +GO + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS isnull_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, N'prefix%'); +SELECT COUNT(*) AS coalesce_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE COALESCE(NULL, N'prefix%'); +GO + +-- NULLIF returns NULL when args match +SELECT COUNT(*) AS nullif_same FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULLIF(N'exact match', N'exact match'); +GO + +-- ISNULL with all NULLs +SELECT COUNT(*) AS isnull_both_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ISNULL(NULL, NULL); +GO + +-- Special characters + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '100!%done' ESCAPE '!'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'100!%done' ESCAPE '!'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'under!_score' ESCAPE '!'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'under!_score' ESCAPE '!'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'back\slash'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'back\slash'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'single''quote'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'single''quote'; +GO + +-- Unicode/accented + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'résumé'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'résumé'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'straße'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'straße'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'naïve'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'naïve'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'caf%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'caf%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'rés%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'rés%'; +GO + +-- Case sensitivity + +SELECT COUNT(*) AS lower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nlower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +SELECT COUNT(*) AS nupper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) AS lower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'PREFIX%'; +SELECT COUNT(*) AS nlower FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +SELECT COUNT(*) AS nupper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'PREFIX%'; +GO + +-- NULL handling + +SELECT COUNT(*) AS like_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE NULL; +GO + +SELECT COUNT(*) AS not_like_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE NULL; +GO + +SELECT COUNT(*) AS cast_null FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(NULL AS NVARCHAR(50)); +GO + +-- Boundary cases + +SELECT COUNT(*) AS empty_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ''; +SELECT COUNT(*) AS empty_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N''; +GO + +SELECT COUNT(*) AS single_a_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'a'; +SELECT COUNT(*) AS single_a_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'a'; +GO + +SELECT COUNT(*) AS underscore_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '_'; +SELECT COUNT(*) AS underscore_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'_'; +GO + +SELECT COUNT(*) AS pct_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE '%'; +SELECT COUNT(*) AS pct_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'%'; +GO + +SELECT COUNT(*) AS spaces_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ' spaces '; +SELECT COUNT(*) AS spaces_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' spaces '; +GO + +SELECT COUNT(*) AS trailing_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'trailing '; +SELECT COUNT(*) AS trailing_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'trailing '; +GO + +SELECT COUNT(*) AS leading_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE ' lead%'; +SELECT COUNT(*) AS leading_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N' lead%'; +GO + +SELECT COUNT(*) AS nonexist_plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'nonexistent_value_xyz'; +SELECT COUNT(*) AS nonexist_nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_value_xyz'; +GO + +-- Collation CI_AS + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume'; +GO + +-- Collation CS_AS + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'café'; +GO + +-- Collation CI_AI + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'café'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'café'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'cafe'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'cafe'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE 'naive'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE N'naive'; +GO + +-- Collation CS_AI + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain_upper FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS nprefix_upper FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'EXACT MATCH'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'résumé'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'résumé'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE 'RESUME'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE N'RESUME'; +GO + +-- NOT LIKE with collations + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col NOT LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col NOT LIKE N'exact match'; +GO + +-- Variables + +DECLARE @v VARCHAR(50) = 'exact match'; +DECLARE @n NVARCHAR(50) = N'exact match'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO + +DECLARE @v VARCHAR(50) = 'prefix%'; +DECLARE @n NVARCHAR(50) = N'prefix%'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO + +DECLARE @v VARCHAR(50) = '%match'; +DECLARE @n NVARCHAR(50) = N'%match'; +SELECT COUNT(*) AS var_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @v; +SELECT COUNT(*) AS nvar_pattern FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @n; +GO + +-- Expression patterns + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS concat_n FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact' + N' match'; +SELECT COUNT(*) AS fn_concat FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONCAT(N'exact', N' ', N'match'); +GO + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'EXACT MATCH'; +SELECT COUNT(*) AS upper_fn FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE UPPER(N'exact match'); +GO + +SELECT COUNT(*) AS direct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS lower_fn FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE LOWER(N'EXACT MATCH'); +GO + +-- Multiple conditions + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' AND Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' OR Col LIKE 'test%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' OR Col LIKE N'test%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'prefix%' AND Col LIKE '%abc'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'prefix%' AND Col LIKE N'%abc'; +GO + +-- NVARCHAR column + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +-- CHAR column + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE '%match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'%match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col NOT LIKE N'exact match'; +GO + +-- NVARCHAR collation tables + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CI_AI WHERE Col LIKE N'resume'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeNVarCollation_CS_AI WHERE Col LIKE N'resume'; +GO + +-- CHAR collation tables + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'exact match'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AS WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CI_AI WHERE Col LIKE N'prefix%'; +GO + +SELECT COUNT(*) AS plain FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE 'prefix%'; +SELECT COUNT(*) AS nprefix FROM BABEL_5966_TestLikeCharCollation_CS_AI WHERE Col LIKE N'prefix%'; +GO + +-- Cross-collation COLLATE clause + +SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS ci_as_cs_collate FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CS_AS; +GO + +SELECT COUNT(*) AS cs_as FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE 'exact match'; +SELECT COUNT(*) AS cs_as_ci_collate FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE N'exact match' COLLATE SQL_Latin1_General_CP1_CI_AS; +GO + +SELECT COUNT(*) AS ci_as FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE 'resume'; +SELECT COUNT(*) AS ci_as_ai_collate FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'resume' COLLATE SQL_Latin1_General_CP1_CI_AI; +GO + +-- CHAR(N) / NCHAR(N) Pattern Tests + +-- CHAR pattern exact match — should NOT match (trailing spaces) +SELECT COUNT(*) AS char_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +-- CHAR pattern same length — should match (no padding) +SELECT COUNT(*) AS char_11_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +GO + +-- Compare: CHAR(11) should match, CHAR(20) should NOT +SELECT COUNT(*) AS char_11 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(11)); +SELECT COUNT(*) AS char_20 FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +-- CHAR pattern with wildcard at end — should still work +SELECT COUNT(*) AS char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS CHAR(20)); +GO + +-- CHAR pattern with large padding +SELECT COUNT(*) AS char_50_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(50)); +GO + +-- CHAR(1) pattern +SELECT COUNT(*) AS char_1_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(1)); +GO + +-- CHAR(10) with single char — padded with 9 spaces +SELECT COUNT(*) AS char_10_a FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('a' AS CHAR(10)); +GO + +-- CHAR(1) with wildcard +SELECT COUNT(*) AS char_1_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(1)); +GO + +-- CHAR(10) with wildcard — becomes '% ' +SELECT COUNT(*) AS char_10_pct FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%' AS CHAR(10)); +GO + +-- NOT LIKE with CHAR pattern +SELECT COUNT(*) AS not_like_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col NOT LIKE CAST('exact match' AS CHAR(20)); +GO + +-- NVARCHAR column with CHAR pattern +SELECT COUNT(*) AS nvar_char_20 FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +-- CHAR column with CHAR pattern (same length as column) +SELECT COUNT(*) AS char_char_50 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(50)); +GO + +-- CHAR column with CHAR pattern (different length) +SELECT COUNT(*) AS char_char_20 FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +-- CHAR pattern with leading wildcard +SELECT COUNT(*) AS char_leading FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('%match' AS CHAR(20)); +GO + +-- CHAR pattern with middle wildcard +SELECT COUNT(*) AS char_middle FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('pre%abc' AS CHAR(20)); +GO + +-- NCHAR patterns +SELECT COUNT(*) AS nchar_20_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO + +SELECT COUNT(*) AS nchar_20_nvar FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE CAST('exact match' AS NCHAR(20)); +GO + +SELECT COUNT(*) AS nchar_20_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('prefix%' AS NCHAR(20)); +GO + +-- CHAR pattern with CONVERT +SELECT COUNT(*) AS convert_char_exact FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'exact match'); +GO + +SELECT COUNT(*) AS convert_char_prefix FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CONVERT(CHAR(20), 'prefix%'); +GO + +-- Nested CHAR casts +SELECT COUNT(*) AS char_to_varchar FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS CHAR(20)) AS VARCHAR(50)); +GO + +SELECT COUNT(*) AS varchar_to_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST(CAST('exact match' AS VARCHAR(50)) AS CHAR(20)); +GO + +-- CHAR pattern across collations +SELECT COUNT(*) AS ci_as_char FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS cs_as_char FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS ci_ai_char FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +SELECT COUNT(*) AS cs_ai_char FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE CAST('exact match' AS CHAR(20)); +GO + +-- Views + +SELECT COUNT(*) AS vw_exact_varchar FROM BABEL_5966_vw_like_exact; +GO + +SELECT COUNT(*) AS vw_prefix_varchar FROM BABEL_5966_vw_like_prefix; +GO + +SELECT COUNT(*) AS vw_suffix_varchar FROM BABEL_5966_vw_like_suffix; +GO + +SELECT COUNT(*) AS vw_contains_varchar FROM BABEL_5966_vw_like_contains; +GO + +SELECT COUNT(*) AS vw_single_char_varchar FROM BABEL_5966_vw_like_single_char; +GO + +SELECT COUNT(*) AS vw_not_like FROM BABEL_5966_vw_not_like; +GO + +SELECT COUNT(*) AS vw_not_like_exact FROM BABEL_5966_vw_not_like_exact; +GO + +SELECT COUNT(*) AS vw_exact_nvarchar FROM BABEL_5966_vw_like_nvar_exact; +GO + +SELECT COUNT(*) AS vw_prefix_nvarchar FROM BABEL_5966_vw_like_nvar_prefix; +GO + +SELECT COUNT(*) AS vw_suffix_nvarchar FROM BABEL_5966_vw_like_nvar_suffix; +GO + +SELECT COUNT(*) AS vw_exact_char FROM BABEL_5966_vw_like_char_exact; +GO + +SELECT COUNT(*) AS vw_prefix_char FROM BABEL_5966_vw_like_char_prefix; +GO + +SELECT COUNT(*) AS vw_suffix_char FROM BABEL_5966_vw_like_char_suffix; +GO + +SELECT COUNT(*) AS vw_or FROM BABEL_5966_vw_like_or; +GO + +SELECT COUNT(*) AS vw_and FROM BABEL_5966_vw_like_and; +GO + +SELECT COUNT(*) AS vw_mixed FROM BABEL_5966_vw_like_and; +GO + +SELECT COUNT(*) AS vw_escape_pct FROM BABEL_5966_vw_like_escape_pct; +GO + +SELECT COUNT(*) AS vw_escape_underscore FROM BABEL_5966_vw_like_escape_underscore; +GO + +SELECT COUNT(*) AS vw_unicode FROM BABEL_5966_vw_like_unicode; +GO + +SELECT COUNT(*) AS vw_unicode_prefix FROM BABEL_5966_vw_like_unicode_prefix; +GO + +SELECT COUNT(*) AS vw_cast_varchar FROM BABEL_5966_vw_like_cast_varchar; +GO + +SELECT COUNT(*) AS vw_cast_nvarchar FROM BABEL_5966_vw_like_cast_nvarchar; +GO + +-- CHAR(20) pattern: should return 0 (trailing spaces, no match) +SELECT COUNT(*) AS vw_cast_char FROM BABEL_5966_vw_like_cast_char; +GO + +SELECT COUNT(*) AS vw_ci_as FROM BABEL_5966_vw_like_ci_as; +GO + +SELECT COUNT(*) AS vw_cs_as FROM BABEL_5966_vw_like_cs_as; +GO + +SELECT COUNT(*) AS vw_ci_ai FROM BABEL_5966_vw_like_ci_ai; +GO + +SELECT COUNT(*) AS vw_cs_ai FROM BABEL_5966_vw_like_cs_ai; +GO + +SELECT COUNT(*) AS vw_ci_as_prefix FROM BABEL_5966_vw_like_ci_as_prefix; +GO + +SELECT COUNT(*) AS vw_cs_as_prefix FROM BABEL_5966_vw_like_cs_as_prefix; +GO + +SELECT COUNT(*) AS vw_ci_ai_prefix FROM BABEL_5966_vw_like_ci_ai_prefix; +GO + +SELECT COUNT(*) AS vw_cs_ai_prefix FROM BABEL_5966_vw_like_cs_ai_prefix; +GO + +SELECT COUNT(*) AS vw_nested FROM BABEL_5966_vw_like_nested; +GO + +SELECT COUNT(*) AS vw_with_id FROM BABEL_5966_vw_like_with_id; +GO + +SELECT COUNT(*) AS vw_prefix_filter FROM BABEL_5966_vw_like_prefix WHERE Col LIKE N'prefix_a%'; +GO + +SELECT COUNT(*) AS vw_nvar_filter FROM BABEL_5966_vw_like_nvar_prefix WHERE Col LIKE N'prefix_a%'; +GO + +SELECT COUNT(*) AS vw_join FROM BABEL_5966_vw_like_prefix v +JOIN BABEL_5966_vw_like_nvar_prefix n ON v.Id = n.Id; +GO + +-- Procedures + +EXEC BABEL_5966_sp_like_exact_const; +GO + +EXEC BABEL_5966_sp_like_prefix_const; +GO + +EXEC BABEL_5966_sp_like_suffix_const; +GO + +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +GO + +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +GO + +EXEC BABEL_5966_sp_like_varchar_param '%match'; +GO + +EXEC BABEL_5966_sp_like_varchar_param '%'; +GO + +EXEC BABEL_5966_sp_like_varchar_param NULL; +GO + +EXEC BABEL_5966_sp_like_varchar_param ''; +GO + +EXEC BABEL_5966_sp_like_varchar_param 'nonexistent_xyz'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'%data%'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'café'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'caf%'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'EXACT MATCH'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'PREFIX%'; +GO + +EXEC BABEL_5966_sp_like_all_types N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_all_types N'exact match'; +GO + +EXEC BABEL_5966_sp_like_all_types N'%match'; +GO + +EXEC BABEL_5966_sp_like_all_types N'café'; +GO + +EXEC BABEL_5966_sp_not_like_param N'zzz%'; +GO + +EXEC BABEL_5966_sp_not_like_param N'prefix%'; +GO + +EXEC BABEL_5966_sp_not_like_param N'exact match'; +GO + +EXEC BABEL_5966_sp_like_escape N'100!%done', '!'; +GO + +EXEC BABEL_5966_sp_like_escape N'under!_score', '!'; +GO + +EXEC BABEL_5966_sp_like_dynamic 'prefix'; +GO + +EXEC BABEL_5966_sp_like_dynamic 'test'; +GO + +EXEC BABEL_5966_sp_like_dynamic 'exact'; +GO + +EXEC BABEL_5966_sp_like_dynamic 'zzz'; +GO + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'prefix%', @result OUTPUT; +SELECT @result AS output_prefix; +GO + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'exact match', @result OUTPUT; +SELECT @result AS output_exact; +GO + +DECLARE @result INT; +EXEC BABEL_5966_sp_like_output N'%match', @result OUTPUT; +SELECT @result AS output_suffix; +GO + +EXEC BABEL_5966_sp_like_all_collations N'exact match'; +GO + +EXEC BABEL_5966_sp_like_all_collations N'EXACT MATCH'; +GO + +EXEC BABEL_5966_sp_like_all_collations N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_all_collations N'PREFIX%'; +GO + +EXEC BABEL_5966_sp_like_all_collations N'café'; +GO + +EXEC BABEL_5966_sp_like_all_collations N'resume'; +GO + +EXEC BABEL_5966_sp_like_nvar_collations N'exact match'; +GO + +EXEC BABEL_5966_sp_like_nvar_collations N'EXACT MATCH'; +GO + +EXEC BABEL_5966_sp_like_nvar_collations N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_nvar_collations N'resume'; +GO + +EXEC BABEL_5966_sp_like_char_collations N'exact match'; +GO + +EXEC BABEL_5966_sp_like_char_collations N'EXACT MATCH'; +GO + +EXEC BABEL_5966_sp_like_char_collations N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_char_collations N'café'; +GO + +EXEC BABEL_5966_sp_like_with_cast 'exact match'; +GO + +EXEC BABEL_5966_sp_like_with_cast 'prefix%'; +GO + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_multi_condition N'prefix%', N'test%'; +GO + +EXEC BABEL_5966_sp_like_multi_condition N'exact match', N'exact match'; +GO + +EXEC BABEL_5966_sp_like_subquery N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_subquery N'exact match'; +GO + +EXEC BABEL_5966_sp_like_exists N'prefix%'; +GO + +EXEC BABEL_5966_sp_like_exists N'exact match'; +GO + +EXEC BABEL_5966_sp_like_top N'prefix%', 3; +GO + +EXEC BABEL_5966_sp_like_top N'zzz%', 5; +GO + +-- Repeated execution +EXEC BABEL_5966_sp_like_varchar_param 'exact match'; +EXEC BABEL_5966_sp_like_varchar_param 'prefix%'; +EXEC BABEL_5966_sp_like_varchar_param '%match'; +EXEC BABEL_5966_sp_like_varchar_param 'test%'; +EXEC BABEL_5966_sp_like_varchar_param 'a%'; +GO + +EXEC BABEL_5966_sp_like_nvarchar_param N'exact match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'prefix%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'%match'; +EXEC BABEL_5966_sp_like_nvarchar_param N'test%'; +EXEC BABEL_5966_sp_like_nvarchar_param N'a%'; +GO + +-- sp_executesql + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'exact match'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'prefix%'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'prefix%'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'%match'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeNVarCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'prefix%'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'exact match'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCharCollation_CI_AS WHERE Col LIKE @p', + N'@p VARCHAR(50)', @p = 'prefix%'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = NULL; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'EXACT MATCH'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'exact match'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AS WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'EXACT MATCH'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CI_AI WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'resume'; +GO + +EXEC sp_executesql N'SELECT COUNT(*) AS cnt FROM BABEL_5966_TestLikeCollation_CS_AI WHERE Col LIKE @p', + N'@p NVARCHAR(50)', @p = N'resume'; +GO + + +-- CHECK Constraints + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('valid_data'); +GO + +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('valid'); +GO + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_prefix (Col) VALUES ('invalid_data'); +GO + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_nprefix (Col) VALUES ('valid_data'); +GO + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_nprefix (Col) VALUES ('invalid_data'); +GO + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('good_data'); +GO + +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('ok_data'); +GO + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_not_like (Col) VALUES ('bad_data'); +GO + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('100%done'); +GO + +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('100%almost'); +GO + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_escape (Col) VALUES ('200%done'); +GO + +-- Should succeed +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('is_valid'); +GO + +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('also_valid'); +GO + +-- Should fail +INSERT INTO BABEL_5966_TestLikeCheck_suffix (Col) VALUES ('invalid'); +GO + +SELECT * FROM BABEL_5966_TestLikeCheck_prefix; +GO + +SELECT * FROM BABEL_5966_TestLikeCheck_nprefix; +GO + +SELECT * FROM BABEL_5966_TestLikeCheck_not_like; +GO + +SELECT * FROM BABEL_5966_TestLikeCheck_escape; +GO + +SELECT * FROM BABEL_5966_TestLikeCheck_suffix; +GO + +-- UPDATE / DELETE + +UPDATE BABEL_5966_TestLikeCollation_CI_AS SET Col = Col WHERE Col LIKE N'prefix%'; +SELECT @@ROWCOUNT AS update_prefix; +GO + +UPDATE BABEL_5966_TestLikeCollation_CI_AS SET Col = Col WHERE Col NOT LIKE N'zzz%'; +SELECT @@ROWCOUNT AS update_not_zzz; +GO + +DELETE FROM BABEL_5966_TestLikeCollation_CI_AS WHERE Col LIKE N'nonexistent_xyz_abc%'; +SELECT @@ROWCOUNT AS delete_none; +GO + +exec sp_babelfish_configure 'explain_costs', 'off'; +GO + +SELECT set_config('enable_bitmapscan', 'on', false); +GO diff --git a/test/JDBC/input/test_constraint_like_before_18_4-or-17_10-16_14-vu-cleanup.sql b/test/JDBC/input/test_constraint_like_before_18_4-or-17_10-16_14-vu-cleanup.sql new file mode 100644 index 00000000000..3d6faa0cb77 --- /dev/null +++ b/test/JDBC/input/test_constraint_like_before_18_4-or-17_10-16_14-vu-cleanup.sql @@ -0,0 +1,202 @@ +-- CASE 1: T_Const LIKE T_CollateExpr(T_Const) +DROP VIEW BABEL_5608_vu_prepare_t1_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t1; +GO + +-- CASE 2: T_CollateExpr(T_Const) LIKE T_Const +DROP VIEW BABEL_5608_vu_prepare_t2_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t2; +GO + +-- CASE 3: T_CollateExpr(T_Const) LIKE T_CollateExpr(T_Const) +DROP VIEW BABEL_5608_vu_prepare_t3_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t3; +GO + +-- CASE 4: T_ReLabelType (T_Var) LIKE T_Const +DROP VIEW BABEL_5608_vu_prepare_t4_1_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t4_1; +GO + +DROP VIEW BABEL_5608_vu_prepare_t4_2_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t4_2; +GO + +-- CASE 5: T_ReLabelType(T_Var) LIKE T_CollateExpr(T_Const) +DROP VIEW BABEL_5608_vu_prepare_t5_1_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t5_1; +GO + +DROP VIEW BABEL_5608_vu_prepare_t5_2_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t5_2; +GO + +-- CASE 6: T_ReLabelType(T_Var) LIKE T_ReLabelType(T_Var) +DROP VIEW BABEL_5608_vu_prepare_t6_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t6; +GO + +-- CASE 7: T_CollateExpr(T_ReLabel(T_Var)) LIKE T_Const +DROP VIEW BABEL_5608_vu_prepare_t7_1_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t7_1; +GO + +DROP VIEW BABEL_5608_vu_prepare_t7_2_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t7_2; +GO + +-- CASE 8: T_CollateExpr(T_ReLabel(T_Var)) LIKE T_CollateExpr(T_Const) +DROP VIEW BABEL_5608_vu_prepare_t8_1_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t8_1; +GO + +DROP VIEW BABEL_5608_vu_prepare_t8_2_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t8_2; +GO + +-- CASE 9: T_FuncExpr LIKE T_CollateExpr(T_Const) AND COMBINATIONS +DROP VIEW BABEL_5608_vu_prepare_t9_1_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t9_1; +GO + +DROP VIEW BABEL_5608_vu_prepare_t9_2_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t9_2; +GO + +DROP VIEW BABEL_5608_vu_prepare_t9_3_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t9_3; +GO + +DROP VIEW BABEL_5608_vu_prepare_t9_4_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t9_4; +GO + +DROP VIEW BABEL_5608_vu_prepare_t9_5_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t9_5; +GO + +DROP VIEW BABEL_5608_vu_prepare_t9_6_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t9_6; +GO + +DROP VIEW BABEL_5608_vu_prepare_t9_7_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t9_7; +GO + +DROP VIEW BABEL_5608_vu_prepare_t9_8_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t9_8; +GO + +-- CASE 10: ESCAPE WITH LIKE +DROP VIEW BABEL_5608_vu_prepare_t10_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t10; +GO + +-- CASE 11: T_CoerceViaIO +DROP VIEW BABEL_5608_vu_prepare_t11_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t11; +GO + +-- CASE 12: CFL CONDITIONS AND MORE +-- IF ELSE +DROP VIEW BABEL_5608_vu_prepare_t12_1_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t12_1; +GO + +-- CASE WHEN +DROP VIEW BABEL_5608_vu_prepare_t12_2_VIEW; +GO + +-- COMPUTED COLUMN (BABEL-5022) +-- DROP VIEW BABEL_5608_vu_prepare_t12_3_VIEW; +-- GO + +-- DROP TABLE BABEL_5608_vu_prepare_t12_3; +-- GO + +-- FUNCTIONS +DROP FUNCTION BABEL_5608_vu_prepare_t12_fun1; +GO + +-- PROCEDURE +DROP PROCEDURE BABEL_5608_vu_prepare_t12_proc1; +GO + +-- CASE 13: VIEW WITH LIKE +DROP VIEW BABEL_5608_13_1_VIEW; +GO + +DROP VIEW BABEL_5608_13_2_VIEW; +GO + +DROP VIEW BABEL_5608_13_3_VIEW; +GO + +DROP VIEW BABEL_5608_13_4_VIEW; +GO + +DROP VIEW BABEL_5608_13_5_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t12_2; +GO + +-- CASE 14: PostFix Pattern match +DROP VIEW BABEL_5608_vu_prepare_t14_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t14; +GO + +-- CASE 15: T_Const LIKE T_Const +DROP VIEW BABEL_5608_vu_prepare_t15_VIEW; +GO + +DROP TABLE BABEL_5608_vu_prepare_t15; +GO diff --git a/test/JDBC/input/test_constraint_like_before_18_4-or-17_10-16_14-vu-prepare.mix b/test/JDBC/input/test_constraint_like_before_18_4-or-17_10-16_14-vu-prepare.mix new file mode 100644 index 00000000000..9463d3fabac --- /dev/null +++ b/test/JDBC/input/test_constraint_like_before_18_4-or-17_10-16_14-vu-prepare.mix @@ -0,0 +1,355 @@ +-- tsql +-- CASE 1: T_Const LIKE T_CollateExpr(T_Const) +CREATE TABLE BABEL_5608_vu_prepare_t1(BABEL_5608_vu_prepare_t1_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t1_c1 CHECK ('abc' LIKE 'A%' COLLATE Latin1_general_ci_as)); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t1_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t1; +GO + +-- CASE 2: T_CollateExpr(T_Const) LIKE T_Const +CREATE TABLE BABEL_5608_vu_prepare_t2(BABEL_5608_vu_prepare_t2_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t2_c1 CHECK ('abc' COLLATE Latin1_general_ci_as LIKE 'A%')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t2_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t2; +GO + +-- CASE 3: T_CollateExpr(T_Const) LIKE T_CollateExpr(T_Const) +CREATE TABLE BABEL_5608_vu_prepare_t3(BABEL_5608_vu_prepare_t3_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t3_c1 CHECK ('abc' COLLATE Latin1_general_ci_as LIKE 'A%' COLLATE Latin1_general_ci_as)); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t3_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t3; +GO + +-- CASE 4: T_ReLabelType (T_Var) LIKE T_Const +CREATE TABLE BABEL_5608_vu_prepare_t4_1(BABEL_5608_vu_prepare_t4_1_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t4_1_c1 CHECK (BABEL_5608_vu_prepare_t4_1_col1 LIKE 'ABC')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t4_1_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t4_1; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t4_2(BABEL_5608_vu_prepare_t4_2_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t4_2_c1 CHECK (BABEL_5608_vu_prepare_t4_2_col1 LIKE 'a%')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t4_2_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t4_2; +GO + +-- CASE 5: T_ReLabelType(T_Var) LIKE T_CollateExpr(T_Const) +CREATE TABLE BABEL_5608_vu_prepare_t5_1(BABEL_5608_vu_prepare_t5_1_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t5_1_c1 CHECK (BABEL_5608_vu_prepare_t5_1_col1 LIKE 'ABC' COLLATE Latin1_General_CI_AI)); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t5_1_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t5_1; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t5_2(BABEL_5608_vu_prepare_t5_2_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t5_2_c1 CHECK (BABEL_5608_vu_prepare_t5_2_col1 LIKE 'a%' COLLATE Latin1_General_CI_AI)); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t5_2_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t5_2; +GO + +-- CASE 6: T_ReLabelType(T_Var) LIKE T_ReLabelType(T_Var) +CREATE TABLE BABEL_5608_vu_prepare_t6(BABEL_5608_vu_prepare_t6_col1 varchar(max), BABEL_5608_vu_prepare_t6_col2 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t6_c1 CHECK (BABEL_5608_vu_prepare_t6_col1 LIKE BABEL_5608_vu_prepare_t6_col2)); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t6_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t6; +GO + +-- CASE 7: T_CollateExpr(T_ReLabel(T_Var)) LIKE T_Const +CREATE TABLE BABEL_5608_vu_prepare_t7_1(BABEL_5608_vu_prepare_t7_1_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t7_1_c1 CHECK (BABEL_5608_vu_prepare_t7_1_col1 COLLATE Latin1_General_CI_AI LIKE 'abc')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t7_1_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t7_1; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t7_2(BABEL_5608_vu_prepare_t7_2_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t7_2_c1 CHECK (BABEL_5608_vu_prepare_t7_2_col1 COLLATE Latin1_General_CI_AI LIKE 'a%')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t7_2_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t7_2; +GO + +-- CASE 8: T_CollateExpr(T_ReLabel(T_Var)) LIKE T_CollateExpr(T_Const) +CREATE TABLE BABEL_5608_vu_prepare_t8_1(BABEL_5608_vu_prepare_t8_1_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t8_1_c1 CHECK (BABEL_5608_vu_prepare_t8_1_col1 COLLATE Latin1_General_CI_AI LIKE 'abc' COLLATE Latin1_General_CI_AI)); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t8_1_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t8_1; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t8_2(BABEL_5608_vu_prepare_t8_2_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t8_2_c1 CHECK (BABEL_5608_vu_prepare_t8_2_col1 COLLATE Latin1_General_CI_AI LIKE 'a%' COLLATE Latin1_General_CI_AI)); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t8_2_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t8_2; +GO + +-- CASE 9: T_FuncExpr LIKE T_CollateExpr(T_Const) AND COMBINTAIONS +CREATE TABLE BABEL_5608_vu_prepare_t9_1(BABEL_5608_vu_prepare_t9_1_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t9_1_c1 CHECK (LOWER(BABEL_5608_vu_prepare_t9_1_col1) LIKE 'abc')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t9_1_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t9_1; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t9_2(BABEL_5608_vu_prepare_t9_2_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t9_2_c1 CHECK (LOWER(BABEL_5608_vu_prepare_t9_2_col1) LIKE 'a%')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t9_2_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t9_2; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t9_3(BABEL_5608_vu_prepare_t9_3_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t9_3_c1 CHECK (LOWER(BABEL_5608_vu_prepare_t9_3_col1 COLLATE Latin1_General_CI_AI) LIKE 'abc')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t9_3_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t9_3; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t9_4(BABEL_5608_vu_prepare_t9_4_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t9_4_c1 CHECK (LOWER(BABEL_5608_vu_prepare_t9_4_col1 COLLATE Latin1_General_CI_AI) LIKE 'a%')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t9_4_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t9_4; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t9_5(BABEL_5608_vu_prepare_t9_5_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t9_5_c1 CHECK (LOWER(BABEL_5608_vu_prepare_t9_5_col1) COLLATE Latin1_General_CI_AI LIKE 'abc')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t9_5_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t9_5; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t9_6(BABEL_5608_vu_prepare_t9_6_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t9_6_c1 CHECK (LOWER(BABEL_5608_vu_prepare_t9_6_col1) COLLATE Latin1_General_CI_AI LIKE 'a%')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t9_6_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t9_6; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t9_7(BABEL_5608_vu_prepare_t9_7_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t9_7_c1 CHECK (LOWER(BABEL_5608_vu_prepare_t9_7_col1 COLLATE Latin1_General_CI_AI) LIKE 'abc' COLLATE Latin1_General_CI_AI)); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t9_7_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t9_7; +GO + +CREATE TABLE BABEL_5608_vu_prepare_t9_8(BABEL_5608_vu_prepare_t9_8_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t9_8_c1 CHECK (LOWER(BABEL_5608_vu_prepare_t9_8_col1) COLLATE Latin1_General_CI_AI LIKE 'a%' COLLATE Latin1_General_CI_AI)); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t9_8_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t9_8; +GO + +-- CASE 10: ESCAPE WITH LIKE +CREATE TABLE BABEL_5608_vu_prepare_t10(BABEL_5608_vu_prepare_t10_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t10_c1 CHECK (BABEL_5608_vu_prepare_t10_col1 COLLATE Latin1_General_CI_AS LIKE '15/% %' ESCAPE '/')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t10_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t10; +GO + +-- CASE 11: T_CoerceViaIO +CREATE TABLE BABEL_5608_vu_prepare_t11(BABEL_5608_vu_prepare_t11_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t11_c1 CHECK (N'123' collate Latin1_General_CI_AI LIKE CAST(123 as varchar(3)))); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t11_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t11; +GO + +-- CASE 12: CFL CONDITIONS AND MORE +-- IF ELSE +CREATE TABLE BABEL_5608_vu_prepare_t12_1 (status varchar(10), CONSTRAINT chk_status CHECK (IIF(status LIKE 'act%', 1, 0) = 1 OR IIF(status = 'inactive', 1, 0) = 1)); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t12_1_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t12_1; +GO + +-- CASE WHEN +CREATE TABLE BABEL_5608_vu_prepare_t12_2 (status varchar(10),CONSTRAINT chk_status CHECK ( + CASE + WHEN status LIKE 'act%' THEN 1 + WHEN status LIKE 'inactive' THEN 1 + ELSE 0 + END = 1 + ) +); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t12_2_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t12_2; +GO + + +-- COMPUTED COLUMNS (BABEL-5022) +-- CREATE TABLE BABEL_5608_vu_prepare_t12_3 (name varchar(10), is_product AS CASE WHEN name LIKE 'PRD%' THEN 1 WHEN name LIKE 'DRP' THEN 2 ELSE 0 END PERSISTED); +-- GO + +-- CREATE VIEW BABEL_5608_vu_prepare_t12_3_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t12_3; +-- GO + +-- FUNCTION +CREATE FUNCTION BABEL_5608_vu_prepare_t12_fun1 +( + @pattern varchar(100) +) +RETURNS TABLE +AS +RETURN +( + SELECT * FROM BABEL_5608_vu_prepare_t12_2 + WHERE status LIKE @pattern +); +GO + +-- PROCEDURE +CREATE PROCEDURE BABEL_5608_vu_prepare_t12_proc1 + @pattern varchar(100) +AS +BEGIN + SET NOCOUNT ON; + + SELECT * FROM BABEL_5608_vu_prepare_t12_2 + WHERE status LIKE @pattern +END; +GO + + +-- CASE 13: VIEW WITH LIKE +CREATE VIEW BABEL_5608_13_1_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t12_2 WHERE status LIKE 'ac%'; +GO + +CREATE VIEW BABEL_5608_13_2_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t12_2 WHERE status COLLATE estonian_ci_ai LIKE 'ac%'; +GO + +CREATE VIEW BABEL_5608_13_3_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t12_2 WHERE status LIKE 'ac%' COLLATE estonian_ci_ai; +GO + +CREATE VIEW BABEL_5608_13_4_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t12_2 WHERE UPPER(status) LIKE 'ac%'; +GO + +CREATE VIEW BABEL_5608_13_5_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t12_2 WHERE UPPER(status) COLLATE DATABASE_DEFAULT LIKE 'ac%'; +GO + +-- CASE 14: PostFix Pattern match +CREATE TABLE BABEL_5608_vu_prepare_t14(BABEL_5608_vu_prepare_t14_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t14_c1 CHECK (BABEL_5608_vu_prepare_t14_col1 COLLATE Latin1_General_CI_AI LIKE '%abc')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t14_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t14; +GO + + +-- CASE 15: T_Const LIKE T_Const +CREATE TABLE BABEL_5608_vu_prepare_t15(BABEL_5608_vu_prepare_t15_col1 varchar(max), CONSTRAINT BABEL_5608_vu_prepare_t15_c1 CHECK ('abc' LIKE 'A%')); +GO + +CREATE VIEW BABEL_5608_vu_prepare_t15_VIEW AS SELECT * FROM BABEL_5608_vu_prepare_t15; +GO + +-- psql +-- CASE 1: T_Const LIKE T_CollateExpr(T_Const) +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t1'::regclass; +GO + +-- CASE 2: T_CollateExpr(T_Const) LIKE T_Const +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t2'::regclass; +GO + +-- CASE 3: T_CollateExpr(T_Const) LIKE T_CollateExpr(T_Const) +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t3'::regclass; +GO + +-- CASE 4: T_ReLabelType (T_Var) LIKE T_Const +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t4_1'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t4_2'::regclass; +GO + +-- CASE 5: T_ReLabelType(T_Var) LIKE T_CollateExpr(T_Const) +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t5_1'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t5_2'::regclass; +GO + +-- CASE 6: T_ReLabelType(T_Var) LIKE T_ReLabelType(T_Var) +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t6'::regclass; +GO + +-- CASE 7: T_CollateExpr(T_ReLabel(T_Var)) LIKE T_Const +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t7_1'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t7_2'::regclass; +GO + +-- CASE 8: T_CollateExpr(T_ReLabel(T_Var)) LIKE T_CollateExpr(T_Const) +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t8_1'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t8_2'::regclass; +GO + +-- CASE 9: T_FuncExpr LIKE T_CollateExpr(T_Const) AND COMBINTAIONS +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_1'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_2'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_3'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_4'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_5'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_6'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_7'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_8'::regclass; +GO + +-- CASE 10: ESCAPE WITH LIKE +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t10'::regclass; +GO + +-- CASE 11: T_CoerceViaIO +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t11'::regclass; +GO + +-- CASE 12: CFL CONDITIONS AND MORE +-- IF ELSE +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t12_1'::regclass; +GO + +-- CASE WHEN +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t12_2'::regclass; +GO + +-- COMPUTED COLUMNS (BABEL-5022) +-- SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t12_3'::regclass; +-- GO + +-- FUNCTION +SELECT pg_get_functiondef(CAST('master_dbo.BABEL_5608_vu_prepare_t12_fun1' as regproc)); +GO + +-- PROCEDURE +SELECT pg_get_functiondef(CAST('master_dbo.BABEL_5608_vu_prepare_t12_proc1' as regproc)); +GO + + +-- CASE 13: VIEW WITH LIKE +SELECT pg_get_viewdef('master_dbo.BABEL_5608_13_1_VIEW', true); +GO + +SELECT pg_get_viewdef('master_dbo.BABEL_5608_13_2_VIEW', true); +GO + +SELECT pg_get_viewdef('master_dbo.BABEL_5608_13_3_VIEW', true); +GO + +SELECT pg_get_viewdef('master_dbo.BABEL_5608_13_4_VIEW', true); +GO + +SELECT pg_get_viewdef('master_dbo.BABEL_5608_13_5_VIEW', true); +GO + +-- CASE 14: PostFix Pattern match +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t14'::regclass; +GO + +-- CASE 15: T_Const LIKE T_Const +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t15'::regclass; +GO diff --git a/test/JDBC/input/test_constraint_like_before_18_4-or-17_10-16_14-vu-verify.mix b/test/JDBC/input/test_constraint_like_before_18_4-or-17_10-16_14-vu-verify.mix new file mode 100644 index 00000000000..351104151c0 --- /dev/null +++ b/test/JDBC/input/test_constraint_like_before_18_4-or-17_10-16_14-vu-verify.mix @@ -0,0 +1,379 @@ +-- tsql +-- CASE 1: T_Const LIKE T_CollateExpr(T_Const) +INSERT INTO BABEL_5608_vu_prepare_t1 VALUES('Abc'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t1_VIEW; +GO + +-- CASE 2: T_CollateExpr(T_Const) LIKE T_Const +INSERT INTO BABEL_5608_vu_prepare_t2 VALUES('Abc'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t2_VIEW; +GO + +-- CASE 3: T_CollateExpr(T_Const) LIKE T_CollateExpr(T_Const) +INSERT INTO BABEL_5608_vu_prepare_t3 VALUES('Abc'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t3_VIEW; +GO + +-- CASE 4: T_ReLabelType (T_Var) LIKE T_Const +INSERT INTO BABEL_5608_vu_prepare_t4_1 VALUES ('Abc'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t4_1_VIEW; +GO + +INSERT INTO BABEL_5608_vu_prepare_t4_2 VALUES ('Abc'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t4_2_VIEW; +GO + +-- CASE 5: T_ReLabelType(T_Var) LIKE T_CollateExpr(T_Const) +INSERT INTO BABEL_5608_vu_prepare_t5_1 VALUES ('Abc'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t5_1_VIEW; +GO + +INSERT INTO BABEL_5608_vu_prepare_t5_2 VALUES ('Abc'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t5_2_VIEW; +GO + +-- CASE 6: T_ReLabelType(T_Var) LIKE T_ReLabelType(T_Var) +INSERT INTO BABEL_5608_vu_prepare_t6 VALUES('abc', 'ABC'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t6_VIEW; +GO + +-- CASE 7: T_CollateExpr(T_ReLabel(T_Var)) LIKE T_Const +INSERT INTO BABEL_5608_vu_prepare_t7_1 VALUES('ABC'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t7_1_VIEW; +GO + +INSERT INTO BABEL_5608_vu_prepare_t7_2 VALUES('ABC'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t7_2_VIEW; +GO + +-- CASE 8: T_CollateExpr(T_ReLabel(T_Var)) LIKE T_CollateExpr(T_Const) +INSERT INTO BABEL_5608_vu_prepare_t8_1 VALUES('ABC'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t8_1_VIEW; +GO + +INSERT INTO BABEL_5608_vu_prepare_t8_2 VALUES('ABC'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t8_2_VIEW; +GO + +-- CASE 9: T_FuncExpr LIKE T_CollateExpr(T_Const) AND COMBINATIONS +INSERT INTO BABEL_5608_vu_prepare_t9_1 VALUES('abc'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t9_1_VIEW; +GO + +INSERT INTO BABEL_5608_vu_prepare_t9_2 VALUES('abc'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t9_2_VIEW; +GO + +INSERT INTO BABEL_5608_vu_prepare_t9_3 VALUES('abc'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t9_3_VIEW; +GO + +INSERT INTO BABEL_5608_vu_prepare_t9_4 VALUES('abc'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t9_4_VIEW; +GO + +INSERT INTO BABEL_5608_vu_prepare_t9_5 VALUES('abc'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t9_5_VIEW; +GO + +INSERT INTO BABEL_5608_vu_prepare_t9_6 VALUES('abc'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t9_6_VIEW; +GO + +INSERT INTO BABEL_5608_vu_prepare_t9_7 VALUES('abc'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t9_7_VIEW; +GO + +INSERT INTO BABEL_5608_vu_prepare_t9_8 VALUES('abc'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t9_8_VIEW; +GO + +-- CASE 10: ESCAPE WITH LIKE +INSERT INTO BABEL_5608_vu_prepare_t10 values('15% off'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t10_VIEW; +GO + +-- CASE 11: T_CoerceViaIO +INSERT INTO BABEL_5608_vu_prepare_t11 values('abc'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t11_VIEW; +GO + +-- CASE 12: CFL CONDITIONS AND MORE +-- IF ELSE +INSERT INTO BABEL_5608_vu_prepare_t12_1 VALUES ('active'); +INSERT INTO BABEL_5608_vu_prepare_t12_1 VALUES ('inactive'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t12_1_VIEW; +GO + +-- CASE WHEN +INSERT INTO BABEL_5608_vu_prepare_t12_2 VALUES ('active'); +INSERT INTO BABEL_5608_vu_prepare_t12_2 VALUES ('inactive'); +GO + +-- should fail +INSERT INTO BABEL_5608_vu_prepare_t12_2 VALUES ('idle'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t12_2_VIEW; +GO + +-- IF EXISTS +IF (EXISTS (SELECT 1 FROM BABEL_5608_vu_prepare_t12_2 WHERE status LIKE 'act%')) +BEGIN + SELECT 'Found matching records' +END +ELSE +BEGIN + SELECT 'No matches found' +END +GO + +IF (EXISTS (SELECT 1 FROM BABEL_5608_vu_prepare_t12_2 WHERE status LIKE 'inactive')) +BEGIN + SELECT 'Found matching records' +END +ELSE +BEGIN + SELECT 'No matches found' +END +GO + +IF (EXISTS (SELECT 1 FROM BABEL_5608_vu_prepare_t12_2 WHERE status LIKE 'idle')) +BEGIN + SELECT 'Found matching records' +END +ELSE +BEGIN + SELECT 'No matches found' +END +GO + +-- COMPUTED COLUMNS (BABEL-5022) +-- INSERT INTO BABEL_5608_vu_prepare_t12_3(name) VALUES('prd'),('drp'); +-- GO + +-- INSERT INTO BABEL_5608_vu_prepare_t12_3(name) VALUES('r'); +-- GO + +-- SELECT * FROM BABEL_5608_vu_prepare_t12_3_VIEW; +-- GO + +-- FUNCTION +SELECT * FROM BABEL_5608_vu_prepare_t12_fun1('act%'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t12_fun1('inactive'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t12_fun1('idle%'); +GO + + +-- PROCEDURE +EXEC BABEL_5608_vu_prepare_t12_proc1 'act%'; +GO + +EXEC BABEL_5608_vu_prepare_t12_proc1 'inactive'; +GO + +EXEC BABEL_5608_vu_prepare_t12_proc1 'idle'; +GO + +-- CASE 13: VIEW WITH LIKE +SELECT * FROM BABEL_5608_13_1_VIEW; +GO + +SELECT * FROM BABEL_5608_13_2_VIEW; +GO + +SELECT * FROM BABEL_5608_13_3_VIEW; +GO + +SELECT * FROM BABEL_5608_13_4_VIEW; +GO + +SELECT * FROM BABEL_5608_13_5_VIEW; +GO + +-- CASE 14: PostFix Pattern match +INSERT INTO BABEL_5608_vu_prepare_t14 VALUES ('abc'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t14_VIEW; +GO + +-- CASE 15: T_Const LIKE T_Const +INSERT INTO BABEL_5608_vu_prepare_t15 VALUES ('abc'); +GO + +SELECT * FROM BABEL_5608_vu_prepare_t15_VIEW; +GO + +-- psql +-- CASE 1: T_Const LIKE T_CollateExpr(T_Const) +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t1'::regclass; +GO + +-- CASE 2: T_CollateExpr(T_Const) LIKE T_Const +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t2'::regclass; +GO + +-- CASE 3: T_CollateExpr(T_Const) LIKE T_CollateExpr(T_Const) +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t3'::regclass; +GO + +-- CASE 4: T_ReLabelType (T_Var) LIKE T_Const +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t4_1'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t4_2'::regclass; +GO + +-- CASE 5: T_ReLabelType(T_Var) LIKE T_CollateExpr(T_Const) +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t5_1'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t5_2'::regclass; +GO + +-- CASE 6: T_ReLabelType(T_Var) LIKE T_ReLabelType(T_Var) +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t6'::regclass; +GO + +-- CASE 7: T_CollateExpr(T_ReLabel(T_Var)) LIKE T_Const +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t7_1'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t7_2'::regclass; +GO + +-- CASE 8: T_CollateExpr(T_ReLabel(T_Var)) LIKE T_CollateExpr(T_Const) +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t8_1'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t8_2'::regclass; +GO + +-- CASE 9: T_FuncExpr LIKE T_CollateExpr(T_Const) AND COMBINTAIONS +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_1'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_2'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_3'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_4'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_5'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_6'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_7'::regclass; +GO + +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t9_8'::regclass; +GO + +-- CASE 10: ESCAPE WITH LIKE +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t10'::regclass; +GO + +-- CASE 11: T_CoerceViaIO +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t11'::regclass; +GO + +-- CASE 12: CFL CONDITIONS AND MORE +-- IF ELSE +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t12_1'::regclass; +GO + +-- CASE WHEN +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t12_2'::regclass; +GO + +-- COMPUTED COLUMNS (BABEL-5022) +-- SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t12_3'::regclass; +-- GO + +-- FUNCTION +SELECT pg_get_functiondef(CAST('master_dbo.BABEL_5608_vu_prepare_t12_fun1' as regproc)); +GO + +-- PROCEDURE +SELECT pg_get_functiondef(CAST('master_dbo.BABEL_5608_vu_prepare_t12_proc1' as regproc)); +GO + +-- CASE 13: VIEW WITH LIKE +SELECT pg_get_viewdef('master_dbo.BABEL_5608_13_1_VIEW', true); +GO + +SELECT pg_get_viewdef('master_dbo.BABEL_5608_13_2_VIEW', true); +GO + +SELECT pg_get_viewdef('master_dbo.BABEL_5608_13_3_VIEW', true); +GO + +SELECT pg_get_viewdef('master_dbo.BABEL_5608_13_4_VIEW', true); +GO + +SELECT pg_get_viewdef('master_dbo.BABEL_5608_13_5_VIEW', true); +GO + +-- CASE 14: PostFix Pattern match +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t14'::regclass; +GO + +-- CASE 15: T_Const LIKE T_Const +SELECT pg_get_constraintdef(oid) FROM pg_constraint WHERE conrelid = 'master_dbo.BABEL_5608_vu_prepare_t15'::regclass; +GO diff --git a/test/JDBC/jdbc_schedule b/test/JDBC/jdbc_schedule index a7b9945f4d8..7cabb3946dd 100644 --- a/test/JDBC/jdbc_schedule +++ b/test/JDBC/jdbc_schedule @@ -278,6 +278,9 @@ ignore#!#datetime2fromparts-vu-prepare ignore#!#datetime2fromparts-vu-verify ignore#!#datetime2fromparts-vu-cleanup ignore#!#babel_smalldatetime_before_15-5 +ignore#!#like_op_index_scan-before-15_2-vu-prepare +ignore#!#like_op_index_scan-before-15_2-vu-verify +ignore#!#like_op_index_scan-before-15_2-vu-cleanup # These tests are meant for only upgrade ignore#!#openquery_upgrd-vu-prepare @@ -755,6 +758,9 @@ ignore#!#babel_convert_with_style-before-14_12-or-16_3-vu-cleanup ignore#!#datetime_roundoff-before-17_8-or-16_12-vu-prepare ignore#!#datetime_roundoff-before-17_8-or-16_12-vu-verify ignore#!#datetime_roundoff-before-17_8-or-16_12-vu-cleanup +ignore#!#test_constraint_like_before_18_4-or-17_10-16_14-vu-prepare +ignore#!#test_constraint_like_before_18_4-or-17_10-16_14-vu-verify +ignore#!#test_constraint_like_before_18_4-or-17_10-16_14-vu-cleanup #crashes ignore#!#TestDatatypeAggSort-before-16_12-or-17_8-vu-prepare diff --git a/test/JDBC/upgrade/14_10/schedule b/test/JDBC/upgrade/14_10/schedule index 6a5e55e9911..6c543a8e59c 100644 --- a/test/JDBC/upgrade/14_10/schedule +++ b/test/JDBC/upgrade/14_10/schedule @@ -506,5 +506,6 @@ test_conv_text_to_string-before-14_21 comparison_op_index_scan-before-15_6-or-14_11 BABEL-5788 babel_convert_with_style-before-14_12-or-16_3 +like_op_index_scan-before-15_2 forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/14_11/schedule b/test/JDBC/upgrade/14_11/schedule index ba9d8353cc9..ebac20bc16f 100644 --- a/test/JDBC/upgrade/14_11/schedule +++ b/test/JDBC/upgrade/14_11/schedule @@ -505,5 +505,6 @@ test_conv_text_to_string-before-14_21 comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 babel_convert_with_style-before-14_12-or-16_3 +like_op_index_scan-before-15_2 forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/14_12/schedule b/test/JDBC/upgrade/14_12/schedule index 889c474e89c..98896b79cd0 100644 --- a/test/JDBC/upgrade/14_12/schedule +++ b/test/JDBC/upgrade/14_12/schedule @@ -505,6 +505,7 @@ test_conv_text_to_binary-before-15_5 test_conv_text_to_string-before-14_21 comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 +like_op_index_scan-before-15_2 babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/14_13/schedule b/test/JDBC/upgrade/14_13/schedule index b29c187a3dd..c1ce5f2aabe 100644 --- a/test/JDBC/upgrade/14_13/schedule +++ b/test/JDBC/upgrade/14_13/schedule @@ -505,6 +505,7 @@ test_conv_text_to_binary-before-15_5 test_conv_text_to_string-before-14_21 comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 +like_op_index_scan-before-15_2 babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/14_15/schedule b/test/JDBC/upgrade/14_15/schedule index bcc2723bc41..05372ee4c8f 100644 --- a/test/JDBC/upgrade/14_15/schedule +++ b/test/JDBC/upgrade/14_15/schedule @@ -503,5 +503,6 @@ test_conv_text_to_string-before-14_21 comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 babel_convert_with_style +like_op_index_scan-before-15_2 forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/14_17/schedule b/test/JDBC/upgrade/14_17/schedule index 16353cd67ac..1a671fce99b 100644 --- a/test/JDBC/upgrade/14_17/schedule +++ b/test/JDBC/upgrade/14_17/schedule @@ -500,5 +500,6 @@ temp_table_dialect_check-before-15_12-or-16_8 comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 babel_convert_with_style +like_op_index_scan-before-15_2 forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/14_18/schedule b/test/JDBC/upgrade/14_18/schedule index b04d7e59b9a..2fcb47fa7cf 100644 --- a/test/JDBC/upgrade/14_18/schedule +++ b/test/JDBC/upgrade/14_18/schedule @@ -503,5 +503,6 @@ test_conv_text_to_string-before-14_21 comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 babel_convert_with_style +like_op_index_scan-before-15_2 forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/14_19/schedule b/test/JDBC/upgrade/14_19/schedule index 889c34cb825..53274d319fa 100644 --- a/test/JDBC/upgrade/14_19/schedule +++ b/test/JDBC/upgrade/14_19/schedule @@ -501,5 +501,6 @@ BABEL-4271 comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 babel_convert_with_style +like_op_index_scan-before-15_2 forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/14_20/schedule b/test/JDBC/upgrade/14_20/schedule index 889c34cb825..53274d319fa 100644 --- a/test/JDBC/upgrade/14_20/schedule +++ b/test/JDBC/upgrade/14_20/schedule @@ -501,5 +501,6 @@ BABEL-4271 comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 babel_convert_with_style +like_op_index_scan-before-15_2 forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/14_22/schedule b/test/JDBC/upgrade/14_22/schedule index 0078f5d3faa..bd7bfcc29a5 100644 --- a/test/JDBC/upgrade/14_22/schedule +++ b/test/JDBC/upgrade/14_22/schedule @@ -500,5 +500,6 @@ BABEL-4271 comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 babel_convert_with_style +like_op_index_scan-before-15_2 forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/14_23/schedule b/test/JDBC/upgrade/14_23/schedule index 0078f5d3faa..bc5218d3489 100644 --- a/test/JDBC/upgrade/14_23/schedule +++ b/test/JDBC/upgrade/14_23/schedule @@ -499,6 +499,7 @@ test_conv_text_to_string-before-14_21 BABEL-4271 comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 +like_op_index_scan-before-15_2 babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/15_10/schedule b/test/JDBC/upgrade/15_10/schedule index a8f8fd043ed..cbce2a8d5a4 100644 --- a/test/JDBC/upgrade/15_10/schedule +++ b/test/JDBC/upgrade/15_10/schedule @@ -603,6 +603,7 @@ babel_timezoneinfo_before_17_7 comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 BABEL-1664-before-16_10-or-17_6 +like_op_index_scan babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/15_12/schedule b/test/JDBC/upgrade/15_12/schedule index 7f1e6a576a8..cf06100bce5 100644 --- a/test/JDBC/upgrade/15_12/schedule +++ b/test/JDBC/upgrade/15_12/schedule @@ -600,6 +600,7 @@ babel_timezoneinfo_before_17_7 comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 BABEL-1664-before-16_10-or-17_6 +like_op_index_scan babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/15_13/schedule b/test/JDBC/upgrade/15_13/schedule index b5d5e1bf00d..3d6784020d2 100644 --- a/test/JDBC/upgrade/15_13/schedule +++ b/test/JDBC/upgrade/15_13/schedule @@ -608,6 +608,7 @@ cast_datetime_to_binary-before-17_7-16_11 comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 BABEL-1664-before-16_10-or-17_6 +like_op_index_scan babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/15_14/schedule b/test/JDBC/upgrade/15_14/schedule index f31d8d2f4b6..98064430ee3 100644 --- a/test/JDBC/upgrade/15_14/schedule +++ b/test/JDBC/upgrade/15_14/schedule @@ -610,6 +610,7 @@ BABEL-4271 comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 BABEL-1664-before-16_10-or-17_6 +like_op_index_scan babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/15_15/schedule b/test/JDBC/upgrade/15_15/schedule index c15392ffc0d..9e11a0ae618 100644 --- a/test/JDBC/upgrade/15_15/schedule +++ b/test/JDBC/upgrade/15_15/schedule @@ -606,6 +606,7 @@ BABEL-4271 comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 BABEL-1664-before-16_10-or-17_6 +like_op_index_scan babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/15_17/schedule b/test/JDBC/upgrade/15_17/schedule index 97d5e9aad14..fe8d39e2403 100644 --- a/test/JDBC/upgrade/15_17/schedule +++ b/test/JDBC/upgrade/15_17/schedule @@ -605,6 +605,7 @@ comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 BABEL-1664-before-16_10-or-17_6 babel_binary-before-17_7-or-16_11 +like_op_index_scan babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/15_18/schedule b/test/JDBC/upgrade/15_18/schedule index 97d5e9aad14..fe8d39e2403 100644 --- a/test/JDBC/upgrade/15_18/schedule +++ b/test/JDBC/upgrade/15_18/schedule @@ -605,6 +605,7 @@ comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 BABEL-1664-before-16_10-or-17_6 babel_binary-before-17_7-or-16_11 +like_op_index_scan babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/15_7/schedule b/test/JDBC/upgrade/15_7/schedule index 51d6605e1c9..b0acbad6694 100644 --- a/test/JDBC/upgrade/15_7/schedule +++ b/test/JDBC/upgrade/15_7/schedule @@ -609,6 +609,7 @@ babel_timezoneinfo_before_17_7 comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 BABEL-1664-before-16_10-or-17_6 +like_op_index_scan babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/15_8/schedule b/test/JDBC/upgrade/15_8/schedule index c6ffaa9d585..bb05c86f937 100644 --- a/test/JDBC/upgrade/15_8/schedule +++ b/test/JDBC/upgrade/15_8/schedule @@ -601,6 +601,7 @@ babel_timezoneinfo_before_17_7 comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 BABEL-1664-before-16_10-or-17_6 +like_op_index_scan babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/16_10/schedule b/test/JDBC/upgrade/16_10/schedule index 21bea22dc75..51298a59d98 100644 --- a/test/JDBC/upgrade/16_10/schedule +++ b/test/JDBC/upgrade/16_10/schedule @@ -648,6 +648,7 @@ comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 BABEL-1664 babel_convert_with_style +like_op_index_scan forxml-raw-elements-before-17_9-or-18_3 sys-fn-varbintohexsubstring forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/16_11/schedule b/test/JDBC/upgrade/16_11/schedule index 6157cd0ffbe..fe18a39a9e5 100644 --- a/test/JDBC/upgrade/16_11/schedule +++ b/test/JDBC/upgrade/16_11/schedule @@ -645,6 +645,7 @@ comparison_op_index_scan-before-17_8-or-16_12 BABEL-1664 babel_string_to_money_reg babel_convert_with_style +like_op_index_scan forxml-raw-elements-before-17_9-or-18_3 sys-fn-varbintohexsubstring forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/16_13/schedule b/test/JDBC/upgrade/16_13/schedule index 88cffcd273c..cba70aece5c 100644 --- a/test/JDBC/upgrade/16_13/schedule +++ b/test/JDBC/upgrade/16_13/schedule @@ -611,7 +611,7 @@ BABEL-NUMERIC_EXPR test_conv_float_to_varchar_char BABEL-5467 BABEL_OBJECT_RESOLUTION_IN_ROUTINES -test_constraint_like +test_constraint_like_before_18_4-or-17_10-16_14 round_return_type_test alter-view test_conv_int_to_varbinary_binary @@ -648,6 +648,7 @@ babel_binary sys-fn_varbintohexstr babel_string_to_money_reg babel_convert_with_style +like_op_index_scan forxml-raw-elements-before-17_9-or-18_3 sys-fn-varbintohexsubstring forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/16_14/schedule b/test/JDBC/upgrade/16_14/schedule index 88cffcd273c..cba70aece5c 100644 --- a/test/JDBC/upgrade/16_14/schedule +++ b/test/JDBC/upgrade/16_14/schedule @@ -611,7 +611,7 @@ BABEL-NUMERIC_EXPR test_conv_float_to_varchar_char BABEL-5467 BABEL_OBJECT_RESOLUTION_IN_ROUTINES -test_constraint_like +test_constraint_like_before_18_4-or-17_10-16_14 round_return_type_test alter-view test_conv_int_to_varbinary_binary @@ -648,6 +648,7 @@ babel_binary sys-fn_varbintohexstr babel_string_to_money_reg babel_convert_with_style +like_op_index_scan forxml-raw-elements-before-17_9-or-18_3 sys-fn-varbintohexsubstring forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/16_3/schedule b/test/JDBC/upgrade/16_3/schedule index ddfa90bdca1..66cd28e4f4a 100644 --- a/test/JDBC/upgrade/16_3/schedule +++ b/test/JDBC/upgrade/16_3/schedule @@ -617,6 +617,7 @@ babel_string_to_money BABEL-5788 BABEL-1664-before-16_10-or-17_6 babel_string_to_money_reg +like_op_index_scan babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/16_4/schedule b/test/JDBC/upgrade/16_4/schedule index 7473d20526e..6c7da3f8d18 100644 --- a/test/JDBC/upgrade/16_4/schedule +++ b/test/JDBC/upgrade/16_4/schedule @@ -632,6 +632,7 @@ babel_string_to_money BABEL-5788 BABEL-1664-before-16_10-or-17_6 babel_string_to_money_reg +like_op_index_scan babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/16_6/schedule b/test/JDBC/upgrade/16_6/schedule index 54e7abcbedd..ee087632c4b 100644 --- a/test/JDBC/upgrade/16_6/schedule +++ b/test/JDBC/upgrade/16_6/schedule @@ -638,6 +638,7 @@ babel_string_to_money BABEL-5788 BABEL-1664-before-16_10-or-17_6 babel_string_to_money_reg +like_op_index_scan babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/16_8/schedule b/test/JDBC/upgrade/16_8/schedule index 607cbbfbfcc..a422e56adce 100644 --- a/test/JDBC/upgrade/16_8/schedule +++ b/test/JDBC/upgrade/16_8/schedule @@ -645,6 +645,7 @@ babel_string_to_money BABEL-5788 BABEL-1664-before-16_10-or-17_6 babel_string_to_money_reg +like_op_index_scan babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/16_9/schedule b/test/JDBC/upgrade/16_9/schedule index 1a1b70632e3..e0456b83871 100644 --- a/test/JDBC/upgrade/16_9/schedule +++ b/test/JDBC/upgrade/16_9/schedule @@ -648,6 +648,7 @@ BABEL-4271 comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 BABEL-1664-before-16_10-or-17_6 +like_op_index_scan babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/17_10/schedule b/test/JDBC/upgrade/17_10/schedule index ebebf65cb24..14d757e56c9 100644 --- a/test/JDBC/upgrade/17_10/schedule +++ b/test/JDBC/upgrade/17_10/schedule @@ -622,7 +622,7 @@ sys-login-property sys-fn-varbintohexsubstring BABEL_OBJECT_RESOLUTION_IN_ROUTINES alter-mvu-test -test_constraint_like +test_constraint_like_before_18_4-or-17_10-16_14 test_like_index unpivot forjson-escape @@ -675,6 +675,7 @@ BABEL-1664 sys-fn_varbintohexstr babel_string_to_money_reg string_aggregate +like_op_index_scan babel_convert_with_style forxml-raw-elements forxml-raw-elements-1gb-limit diff --git a/test/JDBC/upgrade/17_4/schedule b/test/JDBC/upgrade/17_4/schedule index 45349b65a79..1233d6ce9b3 100644 --- a/test/JDBC/upgrade/17_4/schedule +++ b/test/JDBC/upgrade/17_4/schedule @@ -643,6 +643,7 @@ comparison_op_index_scan-before-17_8-or-16_12 BABEL-1664-before-16_10-or-17_6 babel_string_to_money_reg babel_convert_with_style +like_op_index_scan forxml-raw-elements-before-17_9-or-18_3 sys-fn-varbintohexsubstring-before-16_10-or-17_6 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/17_5/schedule b/test/JDBC/upgrade/17_5/schedule index 51dbd3d9bad..ac3e28afad2 100644 --- a/test/JDBC/upgrade/17_5/schedule +++ b/test/JDBC/upgrade/17_5/schedule @@ -656,6 +656,7 @@ BABEL-4271 comparison_op_index_scan-before-17_8-or-16_12 BABEL-1664-before-16_10-or-17_6 string_aggregate +like_op_index_scan babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/17_6/schedule b/test/JDBC/upgrade/17_6/schedule index 70cf75bb49f..0d32294dfc1 100644 --- a/test/JDBC/upgrade/17_6/schedule +++ b/test/JDBC/upgrade/17_6/schedule @@ -667,6 +667,7 @@ BABEL-5788 BABEL-1664 string_aggregate babel_string_to_money_reg +like_op_index_scan babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/17_7/schedule b/test/JDBC/upgrade/17_7/schedule index 46d76ee19be..6dd021b0bba 100644 --- a/test/JDBC/upgrade/17_7/schedule +++ b/test/JDBC/upgrade/17_7/schedule @@ -668,6 +668,7 @@ comparison_op_index_scan-before-17_8-or-16_12 BABEL-5788 BABEL-1664 string_aggregate +like_op_index_scan babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/17_9/schedule b/test/JDBC/upgrade/17_9/schedule index ce3fa8fdf89..dad056adedd 100644 --- a/test/JDBC/upgrade/17_9/schedule +++ b/test/JDBC/upgrade/17_9/schedule @@ -622,7 +622,7 @@ sys-login-property sys-fn-varbintohexsubstring BABEL_OBJECT_RESOLUTION_IN_ROUTINES alter-mvu-test -test_constraint_like +test_constraint_like_before_18_4-or-17_10-16_14-vu-verify test_like_index unpivot forjson-escape @@ -675,6 +675,7 @@ BABEL-1664 sys-fn_varbintohexstr babel_string_to_money_reg string_aggregate +like_op_index_scan babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/18_3/schedule b/test/JDBC/upgrade/18_3/schedule index 8288eac948c..ed5a3496ec9 100644 --- a/test/JDBC/upgrade/18_3/schedule +++ b/test/JDBC/upgrade/18_3/schedule @@ -622,7 +622,7 @@ sys-login-property sys-fn-varbintohexsubstring BABEL_OBJECT_RESOLUTION_IN_ROUTINES alter-mvu-test -test_constraint_like +test_constraint_like_before_18_4-or-17_10-16_14 test_like_index unpivot forjson-escape @@ -675,6 +675,7 @@ BABEL-1664 sys-fn_varbintohexstr babel_string_to_money_reg string_aggregate +like_op_index_scan babel_convert_with_style forxml-raw-elements-before-17_9-or-18_3 forxml-path-elements-before-17_10-or-18_4 diff --git a/test/JDBC/upgrade/latest/schedule b/test/JDBC/upgrade/latest/schedule index 377514cf84c..0a697152036 100644 --- a/test/JDBC/upgrade/latest/schedule +++ b/test/JDBC/upgrade/latest/schedule @@ -677,6 +677,7 @@ BABEL-1664 sys-fn_varbintohexstr babel_string_to_money_reg string_aggregate +like_op_index_scan babel_convert_with_style forxml-raw-elements forxml-raw-elements-1gb-limit