Форматиране на Trino
Форматирайте Trino и Presto SQL по правилата на Trino за идентификатори в двойни кавички, стандартни низове без обратни наклонени черти за екраниране, X'' и литерали U&'', индексиране на масиви и карти и ламбда изрази. Клаузи като WITH, GROUP BY, ORDER BY, OFFSET и FETCH FIRST се извеждат на отделни редове, а колоните се отстъпват по една на ред. Незатворените низове и скоби се посочват с ред и колона за анализаторите.
Често задавани въпроси
Какъв синтаксис на Trino се разпознава?
Разпознават се низове в единични кавички с удвоени кавички, идентификатори в двойни кавички и литерали X'' varbinary и U&'' Unicode. Индексирането Array[1] и map['key'] и ламбда изрази като x -> x + 1 се запазват.
Екранират ли обратните наклонени черти знаци в низовете?
Не. В Trino обратната наклонена черта в низ е обикновен знак и форматирането следва това правило, така че 'C:\' е завършен низ.
Мога ли да форматирам Presto и Amazon Athena заявки?
Да. Presto и Athena споделят правилата на Trino за кавичките и по-голямата част от синтаксиса му, затова заявките им се форматират по същия начин.
Как се обработват имената на каталози и схеми?
Квалифицирани имена като hive.sales.orders и "my-catalog"."schema"."table" остават свързани. Не се добавят интервали около точките.
Кои клаузи получават отделен ред?
WITH, SELECT, FROM, WHERE, GROUP BY, HAVING, WINDOW, ORDER BY, OFFSET, LIMIT и FETCH започват на отделни редове. Операторите за множества UNION, INTERSECT и EXCEPT разделят заявките, които комбинират.
Поддържа ли MERGE?
Да. Клоновете WHEN MATCHED и WHEN NOT MATCHED започват на нови редове.
Променя ли се регистърът на ключовите думи?
Не. Ключовите думи и имената запазват регистъра, който сте задали. Променят се само интервалите и новите редове.
Какви грешки се откриват?
Незатворени низове, идентификатори в кавички, индекси и коментари в блок, както и небалансирани скоби — всеки с посочени ред и колона. Заявките не се изпълняват в клъстер.
Какъв е максималният размер на входните данни?
До 1 MB на заявка и 128 KB на оператор. Няколко оператора се разделят с празни редове.
Мога ли да избера отстъпа и съхранява ли се моят SQL?
Използвайте 2 или 4 интервала или табулации. SQL се форматира само в паметта и никога не се записва.