SQLFluff is a dialect-flexible and configurable SQL linter. Designed with ELT applications in mind, SQLFluff also works with jinja templating and dbt. SQLFluff will auto-fix most linting errors, allowing you to focus your time on what matters.
Getting Started
To get started, install the package and run sqlfluff lint or sqlfluff fix.
$ pip install sqlfluff
$ echo ” SELECT a + b FROM tbl; ” > test.sql
$ sqlfluff lint test.sql
== [test.sql] FAIL
L: 1 | P: 1 | L003 | Single indentation uses a number of spaces not a multiple of 4
L: 1 | P: 14 | L006 | Operators should be surrounded by a single space unless at the start/end of a line
L: 1 | P: 27 | L001 | Unnecessary trailing whitespace
You can also have a play using SQLFluff online.
For full CLI usage and rules reference, see the docs.
Documentation
For full documentation visit docs.sqlfluff.com.
Releases
SQLFluff is in beta phase – expect the tool to change significantly with potentially non-backward compatible api and configuration changes in future releases. If you’d like to join in please consider contributing.
New releases are made monthly. For more information, visit Releases.
SQLFluff on Slack
We have a fast-growing community on Slack, come and join us!
https://join.slack.com/t/sqlfluff/shared_invite/zt-o1f4x0e8-pZzarAIlQmKj_6ZwD16w0g
What is a Software Supply Chain Attack? A software supply chain attack occurs when a…
When people ask how UDP works, the simplest answer is this: UDP sends data quickly…
Endpoint Detection and Response (EDR) solutions have become a cornerstone of modern cybersecurity, designed to…
A large-scale malware campaign leveraging AI-assisted development techniques has been uncovered, revealing how attackers are…
How Does a Firewall Work Step by Step? What Is a Firewall and How Does…
People trying to securely connect to work are being tricked into doing the exact opposite.…