Formateur Redshift
Mettez en forme Amazon Redshift SQL selon les règles de Redshift pour les chaînes avec échappements par barre oblique inverse, les identifiants entre guillemets doubles, les tables #temp, les conversions :: et les corps de fonction entre $$. QUALIFY et MINUS sont conservés comme clauses, les branches MERGE commencent sur de nouvelles lignes et les longues listes de colonnes sont réparties à raison d’une par ligne. Les chaînes et les parenthèses non fermées sont signalées avec leur ligne et leur colonne, ce qui aide les analystes et les ingénieurs de données à examiner le code de l’entrepôt de données.
Foire aux questions
Quelle syntaxe Redshift est prise en charge ?
Les chaînes entre apostrophes simples avec des échappements par barre oblique inverse et des apostrophes doublées, les identifiants entre guillemets doubles, les noms de tables #temp et les conversions :: sont reconnus. Les opérateurs d’expression régulière ~ et ~* avec leurs formes négatives, ainsi que les corps de fonction délimités par $$, sont conservés intacts.
En quoi cela diffère-t-il du formateur PostgreSQL ?
Redshift est issu de PostgreSQL, mais présente des différences : les barres obliques inverses échappent les caractères dans ses chaînes, # désigne un nom de table temporaire au lieu d’être un opérateur, et QUALIFY et MINUS sont disponibles. Ce formateur suit ces règles.
Que deviennent les corps des UDF ?
Les corps des fonctions définies par l’utilisateur en Python ou SQL, écrits entre des marqueurs $$, sont conservés exactement tels quels. Seule l’instruction qui les entoure est mise en forme.
Quelles clauses sont placées sur leur propre ligne ?
SELECT, FROM, WHERE, GROUP BY, HAVING, QUALIFY, ORDER BY, LIMIT et OFFSET commencent chacun sur leur propre ligne. MINUS, UNION, INTERSECT et EXCEPT séparent les requêtes qu’ils combinent.
Prend-il en charge MERGE ?
Oui. Les branches WHEN MATCHED et WHEN NOT MATCHED commencent sur de nouvelles lignes.
Les commentaires sont-ils conservés ?
Oui. Les commentaires -- et /* */ restent en place. Les commentaires de bloc multilignes sont réindentés selon la nouvelle mise en page.
La casse des mots-clés est-elle modifiée ?
Non. Les mots-clés et les noms conservent la casse utilisée dans votre texte. Seuls les espaces et les retours à la ligne changent.
Quelles erreurs sont détectées ?
Les chaînes non fermées, les identifiants entre guillemets, les corps $$, les commentaires de bloc et les parenthèses non équilibrées sont signalés avec leur ligne et leur colonne. Le SQL n’est pas envoyé à votre cluster.
Quelle est la taille maximale de l’entrée ?
Jusqu’à 1 MB par requête et 128 KB par instruction. Les scripts ETL plus longs sont mis en forme instruction par instruction.
Puis-je choisir l’indentation, et mon SQL est-il enregistré ?
Utilisez 2 ou 4 espaces, ou des tabulations. Le SQL est mis en forme uniquement en mémoire et n’est jamais enregistré.