{"id":13486552,"url":"https://github.com/ververica/flink-sql-cookbook","last_synced_at":"2026-02-18T17:01:20.357Z","repository":{"id":38318782,"uuid":"317592323","full_name":"ververica/flink-sql-cookbook","owner":"ververica","description":"The Apache Flink SQL Cookbook is a curated collection of examples, patterns, and use cases of Apache Flink SQL. Many of the recipes are completely self-contained and can be run in Ververica Platform as is.","archived":false,"fork":false,"pushed_at":"2022-11-07T23:10:13.000Z","size":14832,"stargazers_count":907,"open_issues_count":6,"forks_count":209,"subscribers_count":53,"default_branch":"main","last_synced_at":"2025-10-08T23:11:45.339Z","etag":null,"topics":["apache-flink","flink","flink-sql","sql","stream-processing"],"latest_commit_sha":null,"homepage":"","language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ververica.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-12-01T15:56:24.000Z","updated_at":"2025-10-08T11:30:15.000Z","dependencies_parsed_at":"2022-07-11T02:00:23.690Z","dependency_job_id":null,"html_url":"https://github.com/ververica/flink-sql-cookbook","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ververica/flink-sql-cookbook","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ververica%2Fflink-sql-cookbook","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ververica%2Fflink-sql-cookbook/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ververica%2Fflink-sql-cookbook/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ververica%2Fflink-sql-cookbook/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ververica","download_url":"https://codeload.github.com/ververica/flink-sql-cookbook/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ververica%2Fflink-sql-cookbook/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29587066,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-18T16:55:40.614Z","status":"ssl_error","status_checked_at":"2026-02-18T16:55:37.558Z","response_time":162,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apache-flink","flink","flink-sql","sql","stream-processing"],"created_at":"2024-07-31T18:00:48.246Z","updated_at":"2026-02-18T17:01:20.029Z","avatar_url":"https://github.com/ververica.png","language":"Dockerfile","funding_links":[],"categories":["Dockerfile"],"sub_categories":[],"readme":"# Apache Flink SQL Cookbook\n\n The [Apache Flink SQL](https://docs.ververica.com/user_guide/sql_development/index.html) Cookbook is a curated collection of examples, patterns, and use cases of Apache Flink SQL. \n Many of the recipes are completely self-contained and can be run in [Ververica Platform](https://docs.ververica.com/index.html) as is.\n\nThe cookbook is a living document. :seedling: \n\n## Table of Contents\n\n### Foundations\n\n1. [Creating Tables](foundations/01_create_table/01_create_table.md)\n2. [Inserting Into Tables](foundations/02_insert_into/02_insert_into.md)\n3. [Working with Temporary Tables](foundations/03_temporary_table/03_temporary_table.md)\n4. [Filtering Data](foundations/04_where/04_where.md)\n5. [Aggregating Data](foundations/05_group_by/05_group_by.md)\n6. [Sorting Tables](foundations/06_order_by/06_order_by.md)\n7. [Encapsulating Logic with (Temporary) Views](foundations/07_views/07_views.md)\n8. [Writing Results into Multiple Tables](foundations/08_statement_sets/08_statement_sets.md)\n9. [Convert timestamps with timezones](foundations/09_convert_timezones/09_convert_timezones.md)\n\n### Aggregations and Analytics\n1. [Aggregating Time Series Data](aggregations-and-analytics/01_group_by_window/01_group_by_window_tvf.md)\n2. [Watermarks](aggregations-and-analytics/02_watermarks/02_watermarks.md)\n3. [Analyzing Sessions in Time Series Data](aggregations-and-analytics/03_group_by_session_window/03_group_by_session_window.md)\n4. [Rolling Aggregations on Time Series Data](aggregations-and-analytics/04_over/04_over.md)\n5. [Continuous Top-N](aggregations-and-analytics/05_top_n/05_top_n.md)\n6. [Deduplication](aggregations-and-analytics/06_dedup/06_dedup.md)\n7. [Chained (Event) Time Windows](aggregations-and-analytics/07_chained_windows/07_chained_windows.md)\n8. [Detecting Patterns with MATCH_RECOGNIZE](aggregations-and-analytics/08_match_recognize/08_match_recognize.md)\n9. [Maintaining Materialized Views with Change Data Capture (CDC) and Debezium](aggregations-and-analytics/09_cdc_materialized_view/09_cdc_materialized_view.md)\n10. [Hopping Time Windows](aggregations-and-analytics/10_hopping_time_windows/10_hopping_time_windows.md)\n11. [Window Top-N](aggregations-and-analytics/11_window_top_n/11_window_top_n.md)\n12. [Retrieve previous row value without self-join](aggregations-and-analytics/12_lag/12_lag.md)\n\n### Other Built-in Functions \u0026 Operators\n1. [Working with Dates and Timestamps](other-builtin-functions/01_date_time/01_date_time.md)\n2. [Building the Union of Multiple Streams](other-builtin-functions/02_union-all/02_union-all.md)\n3. [Filtering out Late Data](other-builtin-functions/03_current_watermark/03_current_watermark.md)\n4. [Overriding table options](other-builtin-functions/04_override_table_options/04_override_table_options.md)\n5. [Expanding arrays into new rows](other-builtin-functions/05_expanding_arrays/05_expanding_arrays.md)\n6. [Split strings into maps](other-builtin-functions/06_split_strings_into_maps/06_split_strings_into_maps.md)\n\n### User-Defined Functions (UDFs)\n1. [Extending SQL with Python UDFs](udfs/01_python_udfs/01_python_udfs.md)\n\n### Joins\n\n1. [Regular Joins](joins/01_regular_joins/01_regular_joins.md)\n2. [Interval Joins](joins/02_interval_joins/02_interval_joins.md)\n3. [Temporal Table Join between a non-compacted and compacted Kafka Topic](joins/03_kafka_join/03_kafka_join.md)\n4. [Lookup Joins](joins/04_lookup_joins/04_lookup_joins.md)\n5. [Star Schema Denormalization (N-Way Join)](joins/05_star_schema/05_star_schema.md)\n6. [Lateral Table Join](joins/06_lateral_join/06_lateral_join.md)\n\n### Former Recipes\n1. [Aggregating Time Series Data (Before Flink 1.13)](aggregations-and-analytics/01_group_by_window/01_group_by_window.md)\n\n## About Apache Flink\n\nApache Flink is an open source stream processing framework with powerful stream- and batch-processing capabilities.\n\nLearn more about Flink at https://flink.apache.org/.\n\n## License \n\nCopyright © 2020-2022 Ververica GmbH\n\nDistributed under Apache License, Version 2.0.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fververica%2Fflink-sql-cookbook","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fververica%2Fflink-sql-cookbook","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fververica%2Fflink-sql-cookbook/lists"}