Changeset: 6a59cf45bf42 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=6a59cf45bf42
Modified Files:
sql/test/pg_regress/Tests/strings.sql
sql/test/pg_regress/Tests/strings.stable.err
sql/test/pg_regress/Tests/strings.stable.out
Branch: default
Log Message:
Added MonetDB equivalent queries for replacing usage of split_part()
See also bug 3564
diffs (163 lines):
diff --git a/sql/test/pg_regress/Tests/strings.sql
b/sql/test/pg_regress/Tests/strings.sql
--- a/sql/test/pg_regress/Tests/strings.sql
+++ b/sql/test/pg_regress/Tests/strings.sql
@@ -330,12 +330,20 @@ SELECT replace('yabadoo', 'bad', '') AS
select split_part('joeuser@mydatabase','@',0) AS "an error";
select split_part('joeuser@mydatabase','@',1) AS "joeuser";
+-- MonetDB does not support split_part() but in some cases it can be replaced
by using substring() and locate(), such as:
+select substring('joeuser@mydatabase', 0, locate('@','joeuser@mydatabase', 0)
-1) AS "joeuser";
select split_part('joeuser@mydatabase','@',2) AS "mydatabase";
+-- MonetDB does not support split_part() but in some cases it can be replaced
by using substring() and locate(), such as:
+select substring('joeuser@mydatabase', locate('@','joeuser@mydatabase', 0) +1)
AS "mydatabase";
select split_part('joeuser@mydatabase','@',3) AS "empty string";
+-- MonetDB does not support split_part() but in some cases it can be replaced
by using substring() and locate(), such as:
+select substring('joeuser@mydatabase', locate('@','joeuser@mydatabase', 1) +1,
locate('@','joeuser@mydatabase', 2) -1) AS "empty string";
select split_part('@joeuser@mydatabase@','@',2) AS "joeuser";
+-- MonetDB does not support split_part() but in some cases it can be replaced
by using substring() and locate(), such as:
+select substring('@joeuser@mydatabase@', locate('@','@joeuser@mydatabase@', 0)
+1, locate('@','@joeuser@mydatabase@', 1) -1) AS "joeuser";
--
-- test to_hex
diff --git a/sql/test/pg_regress/Tests/strings.stable.err
b/sql/test/pg_regress/Tests/strings.stable.err
--- a/sql/test/pg_regress/Tests/strings.stable.err
+++ b/sql/test/pg_regress/Tests/strings.stable.err
@@ -29,76 +29,79 @@ stderr of test 'strings` in directory 's
# 17:11:19 > "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e"
"--host=/var/tmp/mtest-1142" "--port=38959"
# 17:11:19 >
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = SELECT SUBSTRING('abcdefg' FROM 'a#"(b_d)#"%' FOR '#') AS "bcd";
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = SELECT SUBSTRING('abcdefg' FROM '#"(b_d)#"%' FOR '#') IS NULL AS
"True";
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = SELECT SUBSTRING('abcdefg' FROM '(b|c)' FOR NULL) IS NULL AS "True";
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = SELECT SUBSTRING(NULL FROM '(b|c)' FOR '#') IS NULL AS "True";
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = SELECT SUBSTRING('abcdefg' FROM NULL FOR '#') IS NULL AS "True";
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = SELECT SUBSTRING('abcdefg' FROM 'c.e') AS "cde";
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = SELECT SUBSTRING('abcdefg' FROM 'b(.*)f') AS "cde";
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = SELECT OVERLAY('abcdef' PLACING '45' FROM 4) AS "abc45f";
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = SELECT OVERLAY('yabadoo' PLACING 'daba' FROM 5) AS "yabadaba";
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = SELECT OVERLAY('yabadoo' PLACING 'daba' FROM 5 FOR 0) AS "yabadabadoo";
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = SELECT OVERLAY('babosa' PLACING 'ubb' FROM 2 FOR 4) AS "bubba";
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = insert into toasttest
values(decode(repeat('1234567890',10000),'escape'));
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = insert into toasttest
values(decode(repeat('1234567890',10000),'escape'));
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = insert into toasttest
values(decode(repeat('1234567890',10000),'escape'));
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = insert into toasttest
values(decode(repeat('1234567890',10000),'escape'));
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = select split_part('joeuser@mydatabase','@',0) AS "an error";
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = select split_part('joeuser@mydatabase','@',1) AS "joeuser";
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = select split_part('joeuser@mydatabase','@',2) AS "mydatabase";
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = select split_part('joeuser@mydatabase','@',3) AS "empty string";
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = select split_part('@joeuser@mydatabase@','@',2) AS "joeuser";
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = select to_hex(256*256*256 - 1) AS "ffffff";
-MAPI = (monetdb) /var/tmp/mtest-28555/.s.monetdb.36054
+MAPI = (monetdb) /var/tmp/mtest-32253/.s.monetdb.36413
QUERY = select to_hex(cast(256 as bigint)*cast(256 as bigint)*cast(256 as
bigint)*cast(256 as bigint) - 1) AS "ffffffff";
+
+
+
# 17:11:19 >
# 17:11:19 > "Done."
# 17:11:19 >
diff --git a/sql/test/pg_regress/Tests/strings.stable.out
b/sql/test/pg_regress/Tests/strings.stable.out
--- a/sql/test/pg_regress/Tests/strings.stable.out
+++ b/sql/test/pg_regress/Tests/strings.stable.out
@@ -691,6 +691,30 @@ Ready.
% char # type
% 0 # length
[ "yaoo" ]
+#select substring('joeuser@mydatabase', 0, locate('@','joeuser@mydatabase', 0)
-1) AS "joeuser";
+% .L # table_name
+% joeuser # name
+% char # type
+% 18 # length
+[ "joeuser" ]
+#select substring('joeuser@mydatabase', locate('@','joeuser@mydatabase', 0)
+1) AS "mydatabase";
+% .L # table_name
+% mydatabase # name
+% char # type
+% 18 # length
+[ "mydatabase" ]
+#select substring('joeuser@mydatabase', locate('@','joeuser@mydatabase', 1)
+1, locate('@','joeuser@mydatabase', 2) -1) AS "empty string";
+% .L # table_name
+% empty string # name
+% char # type
+% 18 # length
+[ "" ]
+#select substring('@joeuser@mydatabase@', locate('@','@joeuser@mydatabase@',
0) +1, locate('@','@joeuser@mydatabase@', 1) -1) AS "joeuser";
+% .L # table_name
+% joeuser # name
+% char # type
+% 20 # length
+[ "" ]
#select md5('') = 'd41d8cd98f00b204e9800998ecf8427e' AS "TRUE";
% .L # table_name
% TRUE # name
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list