Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add sql slicing and make sort use a CTE so that the semantics are similar to numpy #1125

Merged
merged 17 commits into from Jun 11, 2015

Conversation

@cpcloud
Copy link
Member

commented Jun 11, 2015

closes #1072

@Will-So

This PR has all of your commits as well as a few extras to fix the order of
operations for sort on the SQL backend.

@cpcloud cpcloud referenced this pull request Jun 11, 2015

Closed

Slice sql #1079

@cpcloud

This comment has been minimized.

Copy link
Member Author

commented Jun 11, 2015

cc @llllllllll this fixes the stuff we talked about on gitter regarding sort

@cpcloud cpcloud self-assigned this Jun 11, 2015

@cpcloud cpcloud added this to the 0.8.1 milestone Jun 11, 2015

def test_sort_compose():
expr = t.name[:5].sort()
result = compute(expr, s)
expected = """with anon_1 as (select accounts.name as name from accounts limit :param_1 offset :param_2) select anon_1.name from anon_1 order by anon_1.name asc"""

This comment has been minimized.

Copy link
@cpcloud

cpcloud Jun 11, 2015

Author Member

note to self: format this

raise ValueError('stop value of slice cannot be negative with a '
'SQL backend.')

if index.step is not None and index.step != 1:

This comment has been minimized.

Copy link
@llllllllll

llllllllll Jun 11, 2015

Member

This could be supported:

SELECT * FROM ( SELECT *, row_number() over () AS number FROM datatable ) foo 
    WHERE foo.number % step = 0;

It is probably out of the scope of this PR and could be added later.

This comment has been minimized.

Copy link
@cpcloud

cpcloud Jun 11, 2015

Author Member

windows functions are definitely at the forefront of my mind. i wonder if this could be used to implement slicing in general ... we can always change the implementation of slicing for sql.

This comment has been minimized.

Copy link
@cpcloud

cpcloud Jun 11, 2015

Author Member

going to merge this pr (after fixing my note to self)

cpcloud added a commit that referenced this pull request Jun 11, 2015

Merge pull request #1125 from cpcloud/sort-compose
Add sql slicing and make sort use a CTE so that the semantics are similar to numpy

@cpcloud cpcloud merged commit 3ca9071 into blaze:master Jun 11, 2015

1 check passed

continuous-integration/travis-ci/pr The Travis CI build passed
Details

@cpcloud cpcloud deleted the cpcloud:sort-compose branch Jun 11, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.