feat: SQL compliance, robustness, and performance improvements#3
Open
feat: SQL compliance, robustness, and performance improvements#3
Conversation
- Add HAVING clause, SELECT DISTINCT, FULL OUTER JOIN, IS NULL/IS NOT NULL - Fix NULL three-valued logic and empty GROUP BY aggregate defaults - Deduplicate condition evaluation into shared utility (5 copies → 1) - Narrow broad exception handlers to specific types - Add predicate pushdown for JOIN queries (left table only) - Add condition reordering optimizer (equality-first heuristic) - Add column-not-found fuzzy matching with suggestions - Sync version from importlib.metadata (was stuck at 0.1.0) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Cover SELECT DISTINCT, FULL OUTER JOIN, HAVING, IS NULL/IS NOT NULL, empty GROUP BY defaults, NULL three-valued logic, column-not-found fuzzy matching, condition reordering, and parser edge cases. Also fix pandas executor to support DISTINCT, HAVING, FULL OUTER JOIN, and IS NULL/IS NOT NULL operators. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
SELECT COUNT(*) FROM empty.csvnow returns 0)._evaluate_conditionfrom 5 copies across readers/operators into a single shared utility. Narrow broadexcept Exceptionhandlers to specific types. Add column-not-found fuzzy matching with "Did you mean?" suggestions.importlib.metadata.Test plan
SELECT DISTINCT city FROM examples/employees.csvSELECT * FROM examples/employees.csv FULL OUTER JOIN examples/departments.csv ON department = nameSELECT department, COUNT(*) FROM examples/employees.csv GROUP BY department HAVING COUNT(*) > 1SELECT * FROM examples/employees.csv WHERE nme = 'Alice'(should show fuzzy suggestion)🤖 Generated with Claude Code