SQLFLUFF 는 방언-유연성 및 구성 가능한 SQL Linter입니다. ELT 응용 프로그램을 염두에두고 설계된 SQLFLUFF는 Jinja Templating 및 DBT 와도 작동합니다. SQLFLUFF는 대부분의 일렬 오류를 자동 고정하여 중요한 것에 집중할 수 있습니다.
SQL은 구현에서 합리적으로 일관성이 있지만 구문 및 문법의 변형으로 사용할 수있는 여러 가지 방언이 있습니다. SQLFLUFF는 현재 다음과 같은 SQL 방언을 지원합니다 (아마도 완전하지는 않지만).
sparksql 방언을 확장합니다).우리는 이러한 방언의 지원을 쉽게 확장하고 현재 지원되지 않은 다른 방언을 추가 할 수 있도록하는 것을 목표로합니다. 누락 된 지원에 대한 수요를 알려주기 위해 문제를 제기하거나 기존 문제를 해결하십시오.
누락 된 구문 또는 방언을 알고있는 사람들의 풀 요청은 특히 환영하며 지원을 추가 할 수있는 질문입니다. 우리는이 지원을 추가 할 수 있도록 잠재적 인 기고자와 협력하게되어 기쁩니다. 이 작업에 시간을 보내기 전에이 프로젝트에 적합한 지 확인하기 위해 큰 기능 변경에 대한 문제를 먼저 제기하십시오.
SQL 자체는 모듈성에 적합하지 않으므로 유연성과 재사용 성을 도입하기 위해 모듈성 문서에서 더 많이 논의 된대로 종종 템플릿이 템플릿됩니다.
sqlfluff는 다음 템플릿을 지원합니다.
더 많은 템플릿 언어/구문을 지원하려면 문제를 제기하십시오.
우리는 또한 대 코드 확장 기능이 있습니다.
시작하려면 패키지를 설치하고 sqlfluff lint 또는 sqlfluff fix 실행하십시오.
$ pip install sqlfluff
$ echo " SELECT a + b FROM tbl; " > test.sql
$ sqlfluff lint test.sql --dialect ansi
== [test.sql] FAIL
L: 1 | P: 1 | LT01 | Expected only single space before ' SELECT ' keyword.
| Found ' ' . [layout.spacing]
L: 1 | P: 1 | LT02 | First line should not be indented.
| [layout.indent]
L: 1 | P: 1 | LT13 | Files must not begin with newlines or whitespace.
| [layout.start_of_file]
L: 1 | P: 11 | LT01 | Expected only single space before binary operator ' + ' .
| Found ' ' . [layout.spacing]
L: 1 | P: 14 | LT01 | Expected only single space before naked identifier.
| Found ' ' . [layout.spacing]
L: 1 | P: 27 | LT01 | Unnecessary trailing whitespace at end of file.
| [layout.spacing]
L: 1 | P: 27 | LT12 | Files must end with a single trailing newline.
| [layout.end_of_file]
All Finished ? !또는 공식 SQLFLUFF DOCKER 이미지를 사용하거나 SQLFLUFF Online을 사용하여 플레이를 할 수 있습니다.
전체 CLI 사용 및 규칙 참조는 SQLFluff 문서를 참조하십시오.
전체 문서를 보려면 docs.sqlfluff.com을 방문하십시오. 이 문서는이 저장소에서 생성되므로 추가, 수정 또는 설명에 대한 문제를 제기하거나 요청을 가져 오십시오.
SQLFLUFF는 시맨틱 버전화에 부착되므로 변경 사항을 주요 버전 릴리스로 제한해야합니다. 일부 요소 (예 : Python API)는 덜 안정적인 상태에 있으며 더 자주 더 중요한 변화를 볼 수 있습니다. 변경 중단 및 버전 간 마이그레이션 방법에 대한 자세한 내용은 릴리스 노트를 참조하십시오. 자세한 내용은 ChangElog를 참조하십시오. 참여하고 싶다면 기여를 고려하십시오.
새로운 릴리스는 매월 이루어집니다. 자세한 내용은 릴리스를 방문하십시오.
우리는 슬랙에 빠르게 성장하는 커뮤니티가 있습니다. 와서 우리와 함께하십시오!
공지 및 기타 관련 게시물을 위해 Twitter @SQLFluff에서 당사를 팔로우하십시오.
우리는 모든 기고자들에게 감사합니다. 이 프로젝트에는해야 할 일이 많으며 방금 시작하고 있습니다.
SQLFLUFF 의 아키텍처에 대해 더 많이 이해하려면 여기에서 자세한 내용을 찾을 수 있습니다.
기여하려면 Github에서 열린 문제를 확인하십시오. 기여에 대한 안내서도 볼 수 있습니다.

Turnkey Analytics Stack은 DataCoves.com에서 자세한 내용을 확인하십시오.