clickhouse-sql-parser
Go library and CLI that parses ClickHouse-dialect SQL into a typed AST. Supports lexing, parsing, AST walking, round-trip formatting, and beautification. Use for query linting, static analysis, rewriting, access-control enforcement, schema validation, and SQL formatting.
파일 탐색기
최종 버전 다운로드 (.zip)- ci.yaml
- interval_expr.sql
- quantile_functions.sql
- set_statement.sql
- settings_statement.sql
- use_database.sql
- interval_expr.sql
- quantile_functions.sql
- set_statement.sql
- settings_statement.sql
- use_database.sql
- interval_expr.sql.golden.json
- quantile_functions.sql.golden.json
- set_statement.sql.golden.json
- settings_statement.sql.golden.json
- use_database.sql.golden.json
- interval_expr.sql
- quantile_functions.sql
- set_statement.sql
- settings_statement.sql
- use_database.sql
- posthog_huge_0.sql
- posthog_huge_1.sql
- alter_role.sql
- alter_table_add_column.sql
- alter_table_add_index.sql
- alter_table_add_projection.sql
- alter_table_add_projection_group_by_only.sql
- alter_table_attach_partition.sql
- alter_table_clear_column.sql
- alter_table_clear_index.sql
- alter_table_clear_projection.sql
- alter_table_delete.sql
- alter_table_delete_with_cluster.sql
- alter_table_detach_partition.sql
- alter_table_drop_column.sql
- alter_table_drop_detach_partition.sql
- alter_table_drop_index.sql
- alter_table_drop_partition.sql
- alter_table_drop_projection.sql
- alter_table_freeze_no_specify_partition.sql
- alter_table_freeze_partition.sql
- alter_table_materialize_index.sql
- alter_table_materialize_projection.sql
- alter_table_modify_column.sql
- alter_table_modify_column_remove.sql
- alter_table_modify_order_by.sql
- alter_table_modify_setting.sql
- alter_table_remove_ttl.sql
- alter_table_rename_column.sql
- alter_table_replace_partition.sql
- alter_table_reset_multiple_settings.sql
- alter_table_reset_setting.sql
- alter_table_update.sql
- alter_table_update_in_partition.sql
- alter_table_update_with_cluster.sql
- attach_table_basic.sql
- bug_001.sql
- check.sql
- create_database.sql
- create_database_replicated.sql
- create_dictionary_basic.sql
- create_dictionary_comprehensive.sql
- create_dictionary_http_source.sql
- create_dictionary_with_comment.sql
- create_distributed_table.sql
- create_function_simple.sql
- create_live_view_basic.sql
- create_materialized_view_basic.sql
- create_materialized_view_rmv_depends_on_multi.sql
- create_materialized_view_rmv_engine_with_columns.sql
- create_materialized_view_with_comment_before_as.sql
- create_materialized_view_with_definer.sql
- create_materialized_view_with_empty_table_schema.sql
- create_materialized_view_with_gcs.sql
- create_materialized_view_with_refresh.sql
- create_mv_with_not_op.sql
- create_mv_with_order_by.sql
- create_named_collection_basic.sql
- create_named_collection_simple.sql
- create_named_collection_with_cluster.sql
- create_named_collection_with_overridable.sql
- create_or_replace.sql
- create_or_replace_materialized_view.sql
- create_role.sql
- create_table_as_remote_function.sql
- create_table_basic.sql
- create_table_codec_no_args.sql
- create_table_json_typehints.sql
- create_table_ttl_group_by.sql
- create_table_with_codec_delta.sql
- create_table_with_codec_gcd.sql
- create_table_with_enum_fields.sql
- create_table_with_index.sql
- create_table_with_keyword_partition_by.sql
- create_table_with_null_engine.sql
- create_table_with_nullable.sql
- create_table_with_on_clsuter.sql
- create_table_with_projection.sql
- create_table_with_projection_group_by_only.sql
- create_table_with_qbit.sql
- create_table_with_sample_by.sql
- create_table_with_ttl_policy.sql
- create_table_with_tuple_fields.sql
- create_table_with_uuid.sql
- create_user.sql
- create_view_basic.sql
- create_view_on_cluster_with_uuid.sql
- create_view_with_comment.sql
- create_with_time_zone.sql
- desc_table_with_table_keyword.sql
- desc_table_without_table_keyword.sql
- describe_table_with_table_keyword.sql
- describe_table_without_table_keyword.sql
- drop_database.sql
- drop_role.sql
- drop_table_basic.sql
- drop_table_with_no_delay.sql
- drop_table_with_on_clsuter.sql
- grant_privilege.sql
- optimize.sql
- rename.sql
- show_create_table.sql
- show_databases.sql
- show_databases_comprehensive.sql
- show_databases_format.sql
- show_databases_format_string.sql
- show_databases_ilike.sql
- show_databases_like.sql
- show_databases_limit.sql
- show_databases_not_ilike.sql
- show_databases_not_like.sql
- show_databases_outfile.sql
- show_tables.sql
- systems.sql
- truncate_table_basic.sql
- truncate_temporary_table_on_clsuter.sql
- alter_role.sql
- alter_table_add_column.sql
- alter_table_add_index.sql
- alter_table_add_projection.sql
- alter_table_add_projection_group_by_only.sql
- alter_table_attach_partition.sql
- alter_table_clear_column.sql
- alter_table_clear_index.sql
- alter_table_clear_projection.sql
- alter_table_delete.sql
- alter_table_delete_with_cluster.sql
- alter_table_detach_partition.sql
- alter_table_drop_column.sql
- alter_table_drop_detach_partition.sql
- alter_table_drop_index.sql
- alter_table_drop_partition.sql
- alter_table_drop_projection.sql
- alter_table_freeze_no_specify_partition.sql
- alter_table_freeze_partition.sql
- alter_table_materialize_index.sql
- alter_table_materialize_projection.sql
- alter_table_modify_column.sql
- alter_table_modify_column_remove.sql
- alter_table_modify_order_by.sql
- alter_table_modify_setting.sql
- alter_table_remove_ttl.sql
- alter_table_rename_column.sql
- alter_table_replace_partition.sql
- alter_table_reset_multiple_settings.sql
- alter_table_reset_setting.sql
- alter_table_update.sql
- alter_table_update_in_partition.sql
- alter_table_update_with_cluster.sql
- attach_table_basic.sql
- bug_001.sql
- check.sql
- create_database.sql
- create_database_replicated.sql
- create_dictionary_basic.sql
- create_dictionary_comprehensive.sql
- create_dictionary_http_source.sql
- create_dictionary_with_comment.sql
- create_distributed_table.sql
- create_function_simple.sql
- create_live_view_basic.sql
- create_materialized_view_basic.sql
- create_materialized_view_rmv_depends_on_multi.sql
- create_materialized_view_rmv_engine_with_columns.sql
- create_materialized_view_with_comment_before_as.sql
- create_materialized_view_with_definer.sql
- create_materialized_view_with_empty_table_schema.sql
- create_materialized_view_with_gcs.sql
- create_materialized_view_with_refresh.sql
- create_mv_with_not_op.sql
- create_mv_with_order_by.sql
- create_named_collection_basic.sql
- create_named_collection_simple.sql
- create_named_collection_with_cluster.sql
- create_named_collection_with_overridable.sql
- create_or_replace.sql
- create_or_replace_materialized_view.sql
- create_role.sql
- create_table_as_remote_function.sql
- create_table_basic.sql
- create_table_codec_no_args.sql
- create_table_json_typehints.sql
- create_table_ttl_group_by.sql
- create_table_with_codec_delta.sql
- create_table_with_codec_gcd.sql
- create_table_with_enum_fields.sql
- create_table_with_index.sql
- create_table_with_keyword_partition_by.sql
- create_table_with_null_engine.sql
- create_table_with_nullable.sql
- create_table_with_on_clsuter.sql
- create_table_with_projection.sql
- create_table_with_projection_group_by_only.sql
- create_table_with_qbit.sql
- create_table_with_sample_by.sql
- create_table_with_ttl_policy.sql
- create_table_with_tuple_fields.sql
- create_table_with_uuid.sql
- create_user.sql
- create_view_basic.sql
- create_view_on_cluster_with_uuid.sql
- create_view_with_comment.sql
- create_with_time_zone.sql
- desc_table_with_table_keyword.sql
- desc_table_without_table_keyword.sql
- describe_table_with_table_keyword.sql
- describe_table_without_table_keyword.sql
- drop_database.sql
- drop_role.sql
- drop_table_basic.sql
- drop_table_with_no_delay.sql
- drop_table_with_on_clsuter.sql
- grant_privilege.sql
- optimize.sql
- rename.sql
- show_create_table.sql
- show_databases.sql
- show_databases_comprehensive.sql
- show_databases_format.sql
- show_databases_format_string.sql
- show_databases_ilike.sql
- show_databases_like.sql
- show_databases_limit.sql
- show_databases_not_ilike.sql
- show_databases_not_like.sql
- show_databases_outfile.sql
- show_tables.sql
- systems.sql
- truncate_table_basic.sql
- truncate_temporary_table_on_clsuter.sql
- alter_role.sql.golden.json
- alter_table_add_column.sql.golden.json
- alter_table_add_index.sql.golden.json
- alter_table_add_projection.sql.golden.json
- alter_table_add_projection_group_by_only.sql.golden.json
- alter_table_attach_partition.sql.golden.json
- alter_table_clear_column.sql.golden.json
- alter_table_clear_index.sql.golden.json
- alter_table_clear_projection.sql.golden.json
- alter_table_delete.sql.golden.json
- alter_table_delete_with_cluster.sql.golden.json
- alter_table_detach_partition.sql.golden.json
- alter_table_drop_column.sql.golden.json
- alter_table_drop_detach_partition.sql.golden.json
- alter_table_drop_index.sql.golden.json
- alter_table_drop_partition.sql.golden.json
- alter_table_drop_projection.sql.golden.json
- alter_table_freeze_no_specify_partition.sql.golden.json
- alter_table_freeze_partition.sql.golden.json
- alter_table_materialize_index.sql.golden.json
- alter_table_materialize_projection.sql.golden.json
- alter_table_modify_column.sql.golden.json
- alter_table_modify_column_remove.sql.golden.json
- alter_table_modify_order_by.sql.golden.json
- alter_table_modify_setting.sql.golden.json
- alter_table_remove_ttl.sql.golden.json
- alter_table_rename_column.sql.golden.json
- alter_table_replace_partition.sql.golden.json
- alter_table_reset_multiple_settings.sql.golden.json
- alter_table_reset_setting.sql.golden.json
- alter_table_update.sql.golden.json
- alter_table_update_in_partition.sql.golden.json
- alter_table_update_with_cluster.sql.golden.json
- attach_table_basic.sql.golden.json
- bug_001.sql.golden.json
- check.sql.golden.json
- create_database.sql.golden.json
- create_database_replicated.sql.golden.json
- create_dictionary_basic.sql.golden.json
- create_dictionary_comprehensive.sql.golden.json
- create_dictionary_http_source.sql.golden.json
- create_dictionary_with_comment.sql.golden.json
- create_distributed_table.sql.golden.json
- create_function_simple.sql.golden.json
- create_live_view_basic.sql.golden.json
- create_materialized_view_basic.sql.golden.json
- create_materialized_view_rmv_depends_on_multi.sql.golden.json
- create_materialized_view_rmv_engine_with_columns.sql.golden.json
- create_materialized_view_with_comment_before_as.sql.golden.json
- create_materialized_view_with_definer.sql.golden.json
- create_materialized_view_with_empty_table_schema.sql.golden.json
- create_materialized_view_with_gcs.sql.golden.json
- create_materialized_view_with_refresh.sql.golden.json
- create_mv_with_not_op.sql.golden.json
- create_mv_with_order_by.sql.golden.json
- create_named_collection_basic.sql.golden.json
- create_named_collection_simple.sql.golden.json
- create_named_collection_with_cluster.sql.golden.json
- create_named_collection_with_overridable.sql.golden.json
- create_or_replace.sql.golden.json
- create_or_replace_materialized_view.sql.golden.json
- create_role.sql.golden.json
- create_table_as_remote_function.sql.golden.json
- create_table_basic.sql.golden.json
- create_table_codec_no_args.sql.golden.json
- create_table_json_typehints.sql.golden.json
- create_table_ttl_group_by.sql.golden.json
- create_table_with_codec_delta.sql.golden.json
- create_table_with_codec_gcd.sql.golden.json
- create_table_with_enum_fields.sql.golden.json
- create_table_with_index.sql.golden.json
- create_table_with_keyword_partition_by.sql.golden.json
- create_table_with_null_engine.sql.golden.json
- create_table_with_nullable.sql.golden.json
- create_table_with_on_clsuter.sql.golden.json
- create_table_with_projection.sql.golden.json
- create_table_with_projection_group_by_only.sql.golden.json
- create_table_with_qbit.sql.golden.json
- create_table_with_sample_by.sql.golden.json
- create_table_with_ttl_policy.sql.golden.json
- create_table_with_tuple_fields.sql.golden.json
- create_table_with_uuid.sql.golden.json
- create_user.sql.golden.json
- create_view_basic.sql.golden.json
- create_view_on_cluster_with_uuid.sql.golden.json
- create_view_with_comment.sql.golden.json
- create_with_time_zone.sql.golden.json
- desc_table_with_table_keyword.sql.golden.json
- desc_table_without_table_keyword.sql.golden.json
- describe_table_with_table_keyword.sql.golden.json
- describe_table_without_table_keyword.sql.golden.json
- drop_database.sql.golden.json
- drop_role.sql.golden.json
- drop_table_basic.sql.golden.json
- drop_table_with_no_delay.sql.golden.json
- drop_table_with_on_clsuter.sql.golden.json
- grant_privilege.sql.golden.json
- optimize.sql.golden.json
- rename.sql.golden.json
- show_create_table.sql.golden.json
- show_databases.sql.golden.json
- show_databases_comprehensive.sql.golden.json
- show_databases_format.sql.golden.json
- show_databases_format_string.sql.golden.json
- show_databases_ilike.sql.golden.json
- show_databases_like.sql.golden.json
- show_databases_limit.sql.golden.json
- show_databases_not_ilike.sql.golden.json
- show_databases_not_like.sql.golden.json
- show_databases_outfile.sql.golden.json
- show_tables.sql.golden.json
- systems.sql.golden.json
- truncate_table_basic.sql.golden.json
- truncate_temporary_table_on_clsuter.sql.golden.json
- alter_role.sql
- alter_table_add_column.sql
- alter_table_add_index.sql
- alter_table_add_projection.sql
- alter_table_add_projection_group_by_only.sql
- alter_table_attach_partition.sql
- alter_table_clear_column.sql
- alter_table_clear_index.sql
- alter_table_clear_projection.sql
- alter_table_delete.sql
- alter_table_delete_with_cluster.sql
- alter_table_detach_partition.sql
- alter_table_drop_column.sql
- alter_table_drop_detach_partition.sql
- alter_table_drop_index.sql
- alter_table_drop_partition.sql
- alter_table_drop_projection.sql
- alter_table_freeze_no_specify_partition.sql
- alter_table_freeze_partition.sql
- alter_table_materialize_index.sql
- alter_table_materialize_projection.sql
- alter_table_modify_column.sql
- alter_table_modify_column_remove.sql
- alter_table_modify_order_by.sql
- alter_table_modify_setting.sql
- alter_table_remove_ttl.sql
- alter_table_rename_column.sql
- alter_table_replace_partition.sql
- alter_table_reset_multiple_settings.sql
- alter_table_reset_setting.sql
- alter_table_update.sql
- alter_table_update_in_partition.sql
- alter_table_update_with_cluster.sql
- attach_table_basic.sql
- bug_001.sql
- check.sql
- create_database.sql
- create_database_replicated.sql
- create_dictionary_basic.sql
- create_dictionary_comprehensive.sql
- create_dictionary_http_source.sql
- create_dictionary_with_comment.sql
- create_distributed_table.sql
- create_function_simple.sql
- create_live_view_basic.sql
- create_materialized_view_basic.sql
- create_materialized_view_rmv_depends_on_multi.sql
- create_materialized_view_rmv_engine_with_columns.sql
- create_materialized_view_with_comment_before_as.sql
- create_materialized_view_with_definer.sql
- create_materialized_view_with_empty_table_schema.sql
- create_materialized_view_with_gcs.sql
- create_materialized_view_with_refresh.sql
- create_mv_with_not_op.sql
- create_mv_with_order_by.sql
- create_named_collection_basic.sql
- create_named_collection_simple.sql
- create_named_collection_with_cluster.sql
- create_named_collection_with_overridable.sql
- create_or_replace.sql
- create_or_replace_materialized_view.sql
- create_role.sql
- create_table_as_remote_function.sql
- create_table_basic.sql
- create_table_codec_no_args.sql
- create_table_json_typehints.sql
- create_table_ttl_group_by.sql
- create_table_with_codec_delta.sql
- create_table_with_codec_gcd.sql
- create_table_with_enum_fields.sql
- create_table_with_index.sql
- create_table_with_keyword_partition_by.sql
- create_table_with_null_engine.sql
- create_table_with_nullable.sql
- create_table_with_on_clsuter.sql
- create_table_with_projection.sql
- create_table_with_projection_group_by_only.sql
- create_table_with_qbit.sql
- create_table_with_sample_by.sql
- create_table_with_ttl_policy.sql
- create_table_with_tuple_fields.sql
- create_table_with_uuid.sql
- create_user.sql
- create_view_basic.sql
- create_view_on_cluster_with_uuid.sql
- create_view_with_comment.sql
- create_with_time_zone.sql
- desc_table_with_table_keyword.sql
- desc_table_without_table_keyword.sql
- describe_table_with_table_keyword.sql
- describe_table_without_table_keyword.sql
- drop_database.sql
- drop_role.sql
- drop_table_basic.sql
- drop_table_with_no_delay.sql
- drop_table_with_on_clsuter.sql
- grant_privilege.sql
- optimize.sql
- rename.sql
- show_create_table.sql
- show_databases.sql
- show_databases_comprehensive.sql
- show_databases_format.sql
- show_databases_format_string.sql
- show_databases_ilike.sql
- show_databases_like.sql
- show_databases_limit.sql
- show_databases_not_ilike.sql
- show_databases_not_like.sql
- show_databases_outfile.sql
- show_tables.sql
- systems.sql
- truncate_table_basic.sql
- truncate_temporary_table_on_clsuter.sql
- alter_table_modify_query.sql
- alter_table_modify_ttl_multiple.sql
- alter_table_with_comment.sql
- alter_table_with_modify_remove_ttl.sql
- alter_table_with_modify_ttl.sql
- create_column_with_ttl.sql
- delete_from.sql
- insert_select_without_from.sql
- insert_values.sql
- insert_with_format.sql
- insert_with_keyword_placeholder.sql
- insert_with_placeholder.sql
- insert_with_select.sql
- alter_table_modify_query.sql
- alter_table_modify_ttl_multiple.sql
- alter_table_with_comment.sql
- alter_table_with_modify_remove_ttl.sql
- alter_table_with_modify_ttl.sql
- create_column_with_ttl.sql
- delete_from.sql
- insert_select_without_from.sql
- insert_values.sql
- insert_with_format.sql
- insert_with_keyword_placeholder.sql
- insert_with_placeholder.sql
- insert_with_select.sql
- alter_table_modify_query.sql.golden.json
- alter_table_modify_ttl_multiple.sql.golden.json
- alter_table_with_comment.sql.golden.json
- alter_table_with_modify_remove_ttl.sql.golden.json
- alter_table_with_modify_ttl.sql.golden.json
- create_column_with_ttl.sql.golden.json
- delete_from.sql.golden.json
- insert_select_without_from.sql.golden.json
- insert_values.sql.golden.json
- insert_with_format.sql.golden.json
- insert_with_keyword_placeholder.sql.golden.json
- insert_with_placeholder.sql.golden.json
- insert_with_select.sql.golden.json
- alter_table_modify_query.sql
- alter_table_modify_ttl_multiple.sql
- alter_table_with_comment.sql
- alter_table_with_modify_remove_ttl.sql
- alter_table_with_modify_ttl.sql
- create_column_with_ttl.sql
- delete_from.sql
- insert_select_without_from.sql
- insert_values.sql
- insert_with_format.sql
- insert_with_keyword_placeholder.sql
- insert_with_placeholder.sql
- insert_with_select.sql
- 00001_count_hits.sql
- 00002_count_visits.sql
- 00004_top_counters.sql
- 00005_filtering.sql
- 00006_agregates.sql
- 00007_uniq.sql
- 00008_uniq.sql
- 00009_uniq_distributed.sql
- 00010_quantiles_segfault.sql
- 00011_sorting.sql
- 00012_sorting_distributed.sql
- 00013_sorting_of_nested.sql
- 00014_filtering_arrays.sql
- 00015_totals_and_no_aggregate_functions.sql
- 00016_any_if_distributed_cond_always_false.sql
- 00017_aggregation_uninitialized_memory.sql
- 00020_distinct_order_by_distributed.sql
- 00021_1_select_with_in.sql
- 00021_2_select_with_in.sql
- 00021_3_select_with_in.sql
- 00022_merge_prewhere.sql
- 00023_totals_limit.sql
- 00024_random_counters.sql
- 00030_array_enumerate_uniq.sql
- 00031_array_enumerate_uniq.sql
- 00032_aggregate_key64.sql
- 00033_aggregate_key_string.sql
- 00034_aggregate_key_fixed_string.sql
- 00035_aggregate_keys128.sql
- 00036_aggregate_hashed.sql
- 00037_uniq_state_merge1.sql
- 00038_uniq_state_merge2.sql
- 00039_primary_key.sql
- 00040_aggregating_materialized_view.sql
- 00041_aggregating_materialized_view.sql
- 00042_any_left_join.sql
- 00043_any_left_join.sql
- 00044_any_left_join_string.sql
- 00045_uniq_upto.sql
- 00046_uniq_upto_distributed.sql
- 00047_bar.sql
- 00048_min_max.sql
- 00049_max_string_if.sql
- 00050_min_max.sql
- 00051_min_max_array.sql
- 00052_group_by_in.sql
- 00053_replicate_segfault.sql
- 00054_merge_tree_partitions.sql
- 00055_index_and_not.sql
- 00056_view.sql
- 00059_merge_sorting_empty_array_joined.sql
- 00060_move_to_prewhere_and_sets.sql
- 00061_storage_buffer.sql
- 00062_loyalty.sql
- 00063_loyalty_joins.sql
- 00065_loyalty_with_storage_join.sql
- 00066_sorting_distributed_many_replicas.sql
- 00067_union_all.sql
- 00068_subquery_in_prewhere.sql
- 00069_duplicate_aggregation_keys.sql
- 00071_merge_tree_optimize_aio.sql
- 00072_compare_date_and_string_index.sql
- 00073_uniq_array.sql
- 00074_full_join.sql
- 00075_left_array_join.sql
- 00076_system_columns_bytes.sql
- 00077_log_tinylog_stripelog.sql
- 00078_group_by_arrays.sql
- 00079_array_join_not_used_joined_column.sql
- 00080_array_join_and_union.sql
- 00081_group_by_without_key_and_totals.sql
- 00082_quantiles.sql
- 00083_array_filter.sql
- 00084_external_aggregation.sql
- 00085_monotonic_evaluation_segfault.sql
- 00086_array_reduce.sql
- 00087_where_0.sql
- 00088_global_in_one_shard_and_rows_before_limit.sql
- 00089_position_functions_with_non_constant_arg.sql
- 00091_prewhere_two_conditions.sql
- 00093_prewhere_array_join.sql
- 00094_order_by_array_join_limit.sql
- 00095_hyperscan_profiler.sql
- 00097_constexpr_in_index.sql
- 00139_like.sql
- 00140_rename.sql
- 00141_transform.sql
- 00142_system_columns.sql
- 00143_transform_non_const_default.sql
- 00144_functions_of_aggregation_states.sql
- 00145_aggregate_functions_statistics.sql
- 00146_aggregate_function_uniq.sql
- 00147_global_in_aggregate_function.sql
- 00148_monotonic_functions_and_index.sql
- 00149_quantiles_timing_distributed.sql
- 00150_quantiles_timing_precision.sql
- 00151_order_by_read_in_order.sql
- 00152_insert_different_granularity.sql
- 00153_aggregate_arena_race.sql
- 00154_avro.sql
- 00156_max_execution_speed_sample_merge.sql
- 00157_cache_dictionary.sql
- 00158_cache_dictionary_has.sql
- 00160_decode_xml_component.sql
- 00162_mmap_compression_none.sql
- 00164_quantileBfloat16.sql
- 00165_jit_aggregate_functions.sql
- 00166_explain_estimate.sql
- 00167_read_bytes_from_fs.sql
- 00169_contingency.sql
- 00170_s3_cache.sql
- 00171_grouping_aggregated_transform_bug.sql
- 00172_early_constant_folding.sql
- 00173_group_by_use_nulls.sql
- 00174_distinct_in_order.sql
- 00175_counting_resources_in_subqueries.sql
- 00176_distinct_limit_by_limit_bug_43377.sql
- 00177_select_from_gcs.sql
- access_tuple_with_dot.sql
- create_window_view.sql
- query_with_expr_compare.sql
- select_case_multiple_when.sql
- select_case_when_exists.sql
- select_case_when_regexp.sql
- select_cast.sql
- select_clause_keyword_as_column.sql
- select_clause_keyword_as_only_column.sql
- select_column_alias_string.sql
- select_concat_expr.sql
- select_dynamic_subcolumn_type_hint.sql
- select_end_as_column_name.sql
- select_expr.sql
- select_expr_keyword_as_column.sql
- select_extract_with_regex.sql
- select_function_keyword_args.sql
- select_intersect.sql
- select_interval_as_column_name.sql
- select_item_with_modifiers.sql
- select_json_type.sql
- select_keyword_alias_no_as.sql
- select_keyword_as_alias.sql
- select_keyword_as_column.sql
- select_keyword_as_last_column.sql
- select_keyword_as_only_column.sql
- select_keyword_as_only_column_semicolon.sql
- select_keyword_operand_arithmetic.sql
- select_keyword_operand_as_function_argument.sql
- select_keyword_operand_before_operator_keyword.sql
- select_keyword_operand_cast_and_subscript.sql
- select_keyword_operand_in_where.sql
- select_keyword_operand_multiple_items.sql
- select_order_by_timestamp.sql
- select_order_by_with_fill_basic.sql
- select_order_by_with_fill_from_to.sql
- select_order_by_with_fill_interpolate.sql
- select_order_by_with_fill_interpolate_no_columns.sql
- select_order_by_with_fill_staleness.sql
- select_order_by_with_fill_step.sql
- select_regexp.sql
- select_reserved_keyword_qualifier.sql
- select_signed_number_after_bracket.sql
- select_simple.sql
- select_simple_field_alias.sql
- select_simple_with_bracket.sql
- select_simple_with_cte_with_column_aliases.sql
- select_simple_with_group_by_with_cube_totals.sql
- select_simple_with_is_not_null.sql
- select_simple_with_is_null.sql
- select_simple_with_limit.sql
- select_simple_with_top_clause.sql
- select_simple_with_with_clause.sql
- select_table_alias_without_keyword.sql
- select_table_function_arg_exprs.sql
- select_table_function_with_query.sql
- select_trailing_comma_before_from.sql
- select_trailing_comma_before_from_keyword_table.sql
- select_when_condition.sql
- select_window_comprehensive.sql
- select_window_cte.sql
- select_window_keyword_name_in_parens.sql
- select_window_named_in_parens.sql
- select_window_named_reference_extensions.sql
- select_window_params.sql
- select_with_distinct.sql
- select_with_distinct_keyword.sql
- select_with_distinct_on_dotted_columns.sql
- select_with_distinct_on_keyword.sql
- select_with_global_join_locality.sql
- select_with_group_by.sql
- select_with_join_only.sql
- select_with_keyword_in_group_by.sql
- select_with_keyword_placeholder.sql
- select_with_left_join.sql
- select_with_literal_table_name.sql
- select_with_multi_array_and_inner_join.sql
- select_with_multi_array_join.sql
- select_with_multi_except.sql
- select_with_multi_join.sql
- select_with_multi_line_comment.sql
- select_with_multi_union.sql
- select_with_multi_union_distinct.sql
- select_with_number_field.sql
- select_with_parenthesized_union.sql
- select_with_placeholder.sql
- select_with_query_parameter.sql
- select_with_settings_additional_table_filters.sql
- select_with_single_quote_table.sql
- select_with_string_expr.sql
- select_with_union_distinct.sql
- select_with_variable.sql
- select_with_window_function.sql
- select_without_from_where.sql
- set_simple.sql
- access_tuple_with_dot.sql
- create_window_view.sql
- query_with_expr_compare.sql
- select_case_multiple_when.sql
- select_case_when_exists.sql
- select_case_when_regexp.sql
- select_cast.sql
- select_clause_keyword_as_column.sql
- select_clause_keyword_as_only_column.sql
- select_column_alias_string.sql
- select_concat_expr.sql
- select_dynamic_subcolumn_type_hint.sql
- select_end_as_column_name.sql
- select_expr.sql
- select_expr_keyword_as_column.sql
- select_extract_with_regex.sql
- select_function_keyword_args.sql
- select_intersect.sql
- select_interval_as_column_name.sql
- select_item_with_modifiers.sql
- select_json_type.sql
- select_keyword_alias_no_as.sql
- select_keyword_as_alias.sql
- select_keyword_as_column.sql
- select_keyword_as_last_column.sql
- select_keyword_as_only_column.sql
- select_keyword_as_only_column_semicolon.sql
- select_keyword_operand_arithmetic.sql
- select_keyword_operand_as_function_argument.sql
- select_keyword_operand_before_operator_keyword.sql
- select_keyword_operand_cast_and_subscript.sql
- select_keyword_operand_in_where.sql
- select_keyword_operand_multiple_items.sql
- select_order_by_timestamp.sql
- select_order_by_with_fill_basic.sql
- select_order_by_with_fill_from_to.sql
- select_order_by_with_fill_interpolate.sql
- select_order_by_with_fill_interpolate_no_columns.sql
- select_order_by_with_fill_staleness.sql
- select_order_by_with_fill_step.sql
- select_regexp.sql
- select_reserved_keyword_qualifier.sql
- select_signed_number_after_bracket.sql
- select_simple.sql
- select_simple_field_alias.sql
- select_simple_with_bracket.sql
- select_simple_with_cte_with_column_aliases.sql
- select_simple_with_group_by_with_cube_totals.sql
- select_simple_with_is_not_null.sql
- select_simple_with_is_null.sql
- select_simple_with_limit.sql
- select_simple_with_top_clause.sql
- select_simple_with_with_clause.sql
- select_table_alias_without_keyword.sql
- select_table_function_arg_exprs.sql
- select_table_function_with_query.sql
- select_trailing_comma_before_from.sql
- select_trailing_comma_before_from_keyword_table.sql
- select_when_condition.sql
- select_window_comprehensive.sql
- select_window_cte.sql
- select_window_keyword_name_in_parens.sql
- select_window_named_in_parens.sql
- select_window_named_reference_extensions.sql
- select_window_params.sql
- select_with_distinct.sql
- select_with_distinct_keyword.sql
- select_with_distinct_on_dotted_columns.sql
- select_with_distinct_on_keyword.sql
- select_with_global_join_locality.sql
- select_with_group_by.sql
- select_with_join_only.sql
- select_with_keyword_in_group_by.sql
- select_with_keyword_placeholder.sql
- select_with_left_join.sql
- select_with_literal_table_name.sql
- select_with_multi_array_and_inner_join.sql
- select_with_multi_array_join.sql
- select_with_multi_except.sql
- select_with_multi_join.sql
- select_with_multi_line_comment.sql
- select_with_multi_union.sql
- select_with_multi_union_distinct.sql
- select_with_number_field.sql
- select_with_parenthesized_union.sql
- select_with_placeholder.sql
- select_with_query_parameter.sql
- select_with_settings_additional_table_filters.sql
- select_with_single_quote_table.sql
- select_with_string_expr.sql
- select_with_union_distinct.sql
- select_with_variable.sql
- select_with_window_function.sql
- select_without_from_where.sql
- set_simple.sql
- access_tuple_with_dot.sql.golden.json
- create_window_view.sql.golden.json
- query_with_expr_compare.sql.golden.json
- select_case_multiple_when.sql.golden.json
- select_case_when_exists.sql.golden.json
- select_case_when_regexp.sql.golden.json
- select_cast.sql.golden.json
- select_clause_keyword_as_column.sql.golden.json
- select_clause_keyword_as_only_column.sql.golden.json
- select_column_alias_string.sql.golden.json
- select_concat_expr.sql.golden.json
- select_dynamic_subcolumn_type_hint.sql.golden.json
- select_end_as_column_name.sql.golden.json
- select_expr.sql.golden.json
- select_expr_keyword_as_column.sql.golden.json
- select_extract_with_regex.sql.golden.json
- select_function_keyword_args.sql.golden.json
- select_intersect.sql.golden.json
- select_interval_as_column_name.sql.golden.json
- select_item_with_modifiers.sql.golden.json
- select_json_type.sql.golden.json
- select_keyword_alias_no_as.sql.golden.json
- select_keyword_as_alias.sql.golden.json
- select_keyword_as_column.sql.golden.json
- select_keyword_as_last_column.sql.golden.json
- select_keyword_as_only_column.sql.golden.json
- select_keyword_as_only_column_semicolon.sql.golden.json
- select_keyword_operand_arithmetic.sql.golden.json
- select_keyword_operand_as_function_argument.sql.golden.json
- select_keyword_operand_before_operator_keyword.sql.golden.json
- select_keyword_operand_cast_and_subscript.sql.golden.json
- select_keyword_operand_in_where.sql.golden.json
- select_keyword_operand_multiple_items.sql.golden.json
- select_order_by_timestamp.sql.golden.json
- select_order_by_with_fill_basic.sql.golden.json
- select_order_by_with_fill_from_to.sql.golden.json
- select_order_by_with_fill_interpolate.sql.golden.json
- select_order_by_with_fill_interpolate_no_columns.sql.golden.json
- select_order_by_with_fill_staleness.sql.golden.json
- select_order_by_with_fill_step.sql.golden.json
- select_regexp.sql.golden.json
- select_reserved_keyword_qualifier.sql.golden.json
- select_signed_number_after_bracket.sql.golden.json
- select_simple.sql.golden.json
- select_simple_field_alias.sql.golden.json
- select_simple_with_bracket.sql.golden.json
- select_simple_with_cte_with_column_aliases.sql.golden.json
- select_simple_with_group_by_with_cube_totals.sql.golden.json
- select_simple_with_is_not_null.sql.golden.json
- select_simple_with_is_null.sql.golden.json
- select_simple_with_limit.sql.golden.json
- select_simple_with_top_clause.sql.golden.json
- select_simple_with_with_clause.sql.golden.json
- select_table_alias_without_keyword.sql.golden.json
- select_table_function_arg_exprs.sql.golden.json
- select_table_function_with_query.sql.golden.json
- select_trailing_comma_before_from.sql.golden.json
- select_trailing_comma_before_from_keyword_table.sql.golden.json
- select_when_condition.sql.golden.json
- select_window_comprehensive.sql.golden.json
- select_window_cte.sql.golden.json
- select_window_keyword_name_in_parens.sql.golden.json
- select_window_named_in_parens.sql.golden.json
- select_window_named_reference_extensions.sql.golden.json
- select_window_params.sql.golden.json
- select_with_distinct.sql.golden.json
- select_with_distinct_keyword.sql.golden.json
- select_with_distinct_on_dotted_columns.sql.golden.json
- select_with_distinct_on_keyword.sql.golden.json
- select_with_global_join_locality.sql.golden.json
- select_with_group_by.sql.golden.json
- select_with_join_only.sql.golden.json
- select_with_keyword_in_group_by.sql.golden.json
- select_with_keyword_placeholder.sql.golden.json
- select_with_left_join.sql.golden.json
- select_with_literal_table_name.sql.golden.json
- select_with_multi_array_and_inner_join.sql.golden.json
- select_with_multi_array_join.sql.golden.json
- select_with_multi_except.sql.golden.json
- select_with_multi_join.sql.golden.json
- select_with_multi_line_comment.sql.golden.json
- select_with_multi_union.sql.golden.json
- select_with_multi_union_distinct.sql.golden.json
- select_with_number_field.sql.golden.json
- select_with_parenthesized_union.sql.golden.json
- select_with_placeholder.sql.golden.json
- select_with_query_parameter.sql.golden.json
- select_with_settings_additional_table_filters.sql.golden.json
- select_with_single_quote_table.sql.golden.json
- select_with_string_expr.sql.golden.json
- select_with_union_distinct.sql.golden.json
- select_with_variable.sql.golden.json
- select_with_window_function.sql.golden.json
- select_without_from_where.sql.golden.json
- set_simple.sql.golden.json
- access_tuple_with_dot.sql
- create_window_view.sql
- query_with_expr_compare.sql
- select_case_multiple_when.sql
- select_case_when_exists.sql
- select_case_when_regexp.sql
- select_cast.sql
- select_clause_keyword_as_column.sql
- select_clause_keyword_as_only_column.sql
- select_column_alias_string.sql
- select_concat_expr.sql
- select_dynamic_subcolumn_type_hint.sql
- select_end_as_column_name.sql
- select_expr.sql
- select_expr_keyword_as_column.sql
- select_extract_with_regex.sql
- select_function_keyword_args.sql
- select_intersect.sql
- select_interval_as_column_name.sql
- select_item_with_modifiers.sql
- select_json_type.sql
- select_keyword_alias_no_as.sql
- select_keyword_as_alias.sql
- select_keyword_as_column.sql
- select_keyword_as_last_column.sql
- select_keyword_as_only_column.sql
- select_keyword_as_only_column_semicolon.sql
- select_keyword_operand_arithmetic.sql
- select_keyword_operand_as_function_argument.sql
- select_keyword_operand_before_operator_keyword.sql
- select_keyword_operand_cast_and_subscript.sql
- select_keyword_operand_in_where.sql
- select_keyword_operand_multiple_items.sql
- select_order_by_timestamp.sql
- select_order_by_with_fill_basic.sql
- select_order_by_with_fill_from_to.sql
- select_order_by_with_fill_interpolate.sql
- select_order_by_with_fill_interpolate_no_columns.sql
- select_order_by_with_fill_staleness.sql
- select_order_by_with_fill_step.sql
- select_regexp.sql
- select_reserved_keyword_qualifier.sql
- select_signed_number_after_bracket.sql
- select_simple.sql
- select_simple_field_alias.sql
- select_simple_with_bracket.sql
- select_simple_with_cte_with_column_aliases.sql
- select_simple_with_group_by_with_cube_totals.sql
- select_simple_with_is_not_null.sql
- select_simple_with_is_null.sql
- select_simple_with_limit.sql
- select_simple_with_top_clause.sql
- select_simple_with_with_clause.sql
- select_table_alias_without_keyword.sql
- select_table_function_arg_exprs.sql
- select_table_function_with_query.sql
- select_trailing_comma_before_from.sql
- select_trailing_comma_before_from_keyword_table.sql
- select_when_condition.sql
- select_window_comprehensive.sql
- select_window_cte.sql
- select_window_keyword_name_in_parens.sql
- select_window_named_in_parens.sql
- select_window_named_reference_extensions.sql
- select_window_params.sql
- select_with_distinct.sql
- select_with_distinct_keyword.sql
- select_with_distinct_on_dotted_columns.sql
- select_with_distinct_on_keyword.sql
- select_with_global_join_locality.sql
- select_with_group_by.sql
- select_with_join_only.sql
- select_with_keyword_in_group_by.sql
- select_with_keyword_placeholder.sql
- select_with_left_join.sql
- select_with_literal_table_name.sql
- select_with_multi_array_and_inner_join.sql
- select_with_multi_array_join.sql
- select_with_multi_except.sql
- select_with_multi_join.sql
- select_with_multi_line_comment.sql
- select_with_multi_union.sql
- select_with_multi_union_distinct.sql
- select_with_number_field.sql
- select_with_parenthesized_union.sql
- select_with_placeholder.sql
- select_with_query_parameter.sql
- select_with_settings_additional_table_filters.sql
- select_with_single_quote_table.sql
- select_with_string_expr.sql
- select_with_union_distinct.sql
- select_with_variable.sql
- select_with_window_function.sql
- select_without_from_where.sql
- set_simple.sql
- ast.go
- ast_visitor.go
- benchmark_test.go
- error.go
- error_test.go
- format.go
- format_test.go
- helper.go
- keyword.go
- keyword_test.go
- lexer.go
- lexer_test.go
- parse_system.go
- parser_alter.go
- parser_column.go
- parser_common.go
- parser_drop.go
- parser_query.go
- parser_table.go
- parser_test.go
- parser_view.go
- position_test.go
- precedence_test.go
- set.go
- set_test.go
- source.go
- traversal_drift_test.go
- type.go
- visitor_test.go
- walk.go
- walk_test.go
- .gitattributes
- .gitignore
- .golangci.yml
- .version
- AGENTS.md
- CLAUDE.md
- go.mod
- go.sum
- LICENSE
- main.go
- Makefile
- README.md
# 설치 가이드
1. 코드 내려받기
git clone https://github.com/AfterShip/clickhouse-sql-parser
깃허브에서 프로젝트 코드 전체를 내 컴퓨터로 내려받습니다.
cd clickhouse-sql-parser
방금 내려받은 프로젝트 폴더 안으로 이동합니다.
2. Go
보통 추천$ go install github.com/AfterShip/clickhouse-sql-parser@latest
이 명령어를 터미널에 그대로 입력해 실행하세요.
빌드가 에러 없이 끝나면 성공입니다. go run . 을 썼다면 터미널 출력을 확인하세요.
이 레포의 README에 적힌 실제 명령어를 그대로 가져왔습니다.
3. Make
보통사전 준비물
- Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
- Make Linux/macOS는 보통 기본 설치되어 있습니다. Windows는 별도 설치(예: MSYS2, WSL)가 필요합니다.
make
생성된 빌드 설정을 바탕으로 실제 컴파일을 진행해 실행 파일을 만듭니다.
에러 없이 끝나면 성공입니다. 생성된 실행 파일을 직접 실행해보세요.
// repository documentation
Was this content helpful?
(0 ratings)
