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

feature: Settings clause #16387

Closed
sundy-li opened this issue Sep 4, 2024 · 3 comments · Fixed by #16669
Closed

feature: Settings clause #16387

sundy-li opened this issue Sep 4, 2024 · 3 comments · Fixed by #16669
Assignees
Labels
C-documentation Category: documentation C-feature Category: feature

Comments

@sundy-li
Copy link
Member

sundy-li commented Sep 4, 2024

Summary

syntax

SETTINGS ( parameter = value [ , parameter = value ] )  Statement

SETTINGS clause works only in Statement of:

SELECT
INSERT 
MergeINTO
COPY
UPDATE
DELETE
CREATE TABLE 
EXPLAIN

examples:

settings (max_thread = 3,  enable_loser_tree_merge_sort = 1) select  1 + 1 
settings (max_thread = 3,  enable_loser_tree_merge_sort = 1)  copy into ....

We already had set_var_hints now, but the syntax is not friendly.
Settings could also be parsed into HintItem.

Any advice? cc @zhang2014 @andylokandy

Refer to https://docs.yellowbrick.com/6.8.1/ybd_sqlref/setting_clause.html

@BohuTANG

This comment was marked as outdated.

@dosubot dosubot bot added C-documentation Category: documentation C-feature Category: feature labels Sep 4, 2024
@zhang2014
Copy link
Member

LGTM

@TCeason
Copy link
Collaborator

TCeason commented Oct 16, 2024

Maybe add a new type in SetType is better than HintItem?

pub enum SetType {
    #[default]
    SettingsSession,
    SettingsGlobal,
    Variable,
    SettingsQuery,
}

And if user use query level settings and hints , the hints will be invalid.

That's easy to delete the code about hints.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-documentation Category: documentation C-feature Category: feature
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants