Changeset: b288cacdd535 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=b288cacdd535 Added Files: sql/test/sciql2sql/Tests/vector_multi_tiles.sql Modified Files: sql/test/sciql2sql/Tests/All sql/test/sciql2sql/Tests/structural_joins.sql Branch: SciQL-2 Log Message:
Using array projections in FROM clause diffs (99 lines): diff --git a/sql/test/sciql2sql/Tests/All b/sql/test/sciql2sql/Tests/All --- a/sql/test/sciql2sql/Tests/All +++ b/sql/test/sciql2sql/Tests/All @@ -27,5 +27,6 @@ structural_joins # tiling based on dimensional attributes vector_fixed_tiles +vector_multi_tiles # # tiling based on mix of dimensional attribues diff --git a/sql/test/sciql2sql/Tests/structural_joins.sql b/sql/test/sciql2sql/Tests/structural_joins.sql --- a/sql/test/sciql2sql/Tests/structural_joins.sql +++ b/sql/test/sciql2sql/Tests/structural_joins.sql @@ -83,12 +83,21 @@ SELECT [x], [y], avg(gray) FROM image GROUP BY image[x:x+3][y:y+3]; -SELECT x AS XOFF, y AS YOFF, ( - SELECT avg(A.gray + B.gray) +SELECT R.x , R.y, ( + SELECT avg(A.gray) FROM imageR A, patchR B WHERE A.x - R.x = B.x AND A.y- R.y = B.y ) FROM imageR R; +-- multiple groups +SELECT R.x, R.y, S.x, S.y +FROM imageR R, imageR S +WHERE gray >1 +GROUP BY R[x:x+2][y:y+2], S[x:x+2][y:y+2] +HAVING (R.x-S.x)*(R.x-S.x) + (R.y-S.y)*(R.y-S.y) < 5*5; + +--relational equivalent, More work needed + DROP ARRAY image; DROP ARRAY patch; diff --git a/sql/test/sciql2sql/Tests/vector_multi_tiles.sql b/sql/test/sciql2sql/Tests/vector_multi_tiles.sql new file mode 100644 --- /dev/null +++ b/sql/test/sciql2sql/Tests/vector_multi_tiles.sql @@ -0,0 +1,57 @@ +-- Test tiling over a 1D fixed array +CREATE ARRAY array1D(x INTEGER DIMENSION[7], v INTEGER DEFAULT 1, w INTEGER DEFAULT 0); +INSERT INTO array1D values +( 0, 1, 1), +( 1, 1, 2), +( 2, 2, 1), +( 3, 2, 5), +( 4, 3, 7), +( 5, 3, 7), +( 6, 4, 1); + +-- relational equivalent +CREATE TABLE vector(x INTEGER CHECK(x >=0 and x < 7), v INTEGER DEFAULT 1, w INTEGER DEFAULT 0); +INSERT INTO vector values +( 0, 1, 1), +( 1, 1, 2), +( 2, 2, 1), +( 3, 2, 5), +( 4, 3, 7), +( 5, 3, 7), +( 6, 4, 1); + +-- simple projections using the FROM clause +SELECT sum(v) FROM array1D[0]; +SELECT sum(v) FROM array1D[0:3]; + +-- relational equivalences +SELECT sum(v) FROM vector WHERE x= 0; +SELECT sum(v) FROM vector WHERE x>= 0 AND x <3; + +-- using a variable [SEGVAULT] +-- SELECT R.x, (SELECT sum(v) FROM array1D[R.x]) +-- FROM array1D R; + +-- relational equivalence +SELECT R.x, (SELECT sum(v) FROM vector WHERE x=R.x) +FROM vector R; + +-- using a variable [SEGVAULT] +-- SELECT R.x, (SELECT sum(v) FROM array1D[0:R.v]) +-- FROM array1D R; + +-- relational equivalence +SELECT R.x, (SELECT sum(v) FROM vector WHERE x >= 0 AND x <R.x) +FROM vector R; + +-- using a variable [SEGVAULT] +-- SELECT R.x, (SELECT sum(v) FROM array1D[0:2:R.v]) +-- FROM array1D R; + +-- relational equivalence +SELECT R.x, (SELECT sum(v) FROM vector WHERE x >= 0 AND x <R.x AND x % 2 = 0) +FROM vector R; + +DROP ARRAY array1D; +DROP TABLE vector; + _______________________________________________ checkin-list mailing list checkin-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/checkin-list