PrestoSQL-Syntax und -Optimierung



1. Überblick über PrestoSQL


Am 27. Dezember 2020 wurde PrestoSQL in Trino umbenannt, um es besser von Facebooks Presto zu unterscheiden. PrestoSQL/Trino ist eine verteilte SQL-Abfrage-Engine, die für die Abfrage großer Datensätze entwickelt wurde, die über eine oder mehrere heterogene Datenquellen verteilt sind

Offizielle PrestoSQL-Website:https://trino.io

Offizielle PrestoSQL-Dokumentation:https://trino.io/docs/current/overview.html

Weitere Informationen zu Presto finden Sie im Artikel:Portal

PrestoSQL/Trino ist eine ANSI SQL-kompatible Abfrage-Engine. Diese Standardkonformität ermöglicht es PrestoSQL-Benutzern, ihre bevorzugten Datentools, einschließlich BI- und ETL-Tools, mit jeder zugrunde liegenden Datenquelle zu integrieren

PrestoSQL validiert die empfangenen SQL-Anweisungen und konvertiert sie, um die erforderlichen Vorgänge an der verbundenen Datenquelle auszuführen. In diesem Artikel werden hauptsächlich die von PrestoSQL unterstützten SQL-Datentypen und andere von SQL unterstützte allgemeine Funktionen sowie die Optimierung von PrestoSQL vorgestellt

2. PrestoSQL-Syntax

2.1. PrestoSQL-Datentyp


Einzelheiten zu PrestoSQL-Datentypen finden Sie auf der offiziellen Website:https://trino.io/docs/current/sprache/types.html#

2.2. Schlüsselwörter und Identifikatoren


Einzelheiten zu PrestoSQL-Schlüsselwörtern und -Bezeichnern finden Sie auf der offiziellen Website:https://trino.io/docs/current/sprache/reserved.html

2.3. PrestoSQL-Kommentare


Einzelheiten zu PrestoSQL-Kommentaren finden Sie auf der offiziellen Website:https://trino.io/docs/current/sprache/comments.html#

2.4. PrestoSQL-Syntax


Einzelheiten zur PrestoSQL-Syntax finden Sie auf der offiziellen Website:https://trino.io/docs/current/sql.html#

2.5. PrestoSQL-Routinen


Einzelheiten zu PrestoSQL-Routinen finden Sie auf der offiziellen Website:https://trino.io/docs/current/routines.html#

2.6. Häufig gestellte Fragen zur Verwendung von PrestoSQL


1) Feldnamenreferenz

Vermeiden Sie Konflikte zwischen Feldnamen und Schlüsselwörtern: MySQL fügt Backticks zu Feldnamen hinzu, die mit Schlüsselwörtern in Konflikt stehen, und Presto fügt doppelte Anführungszeichen zu Feldnamen hinzu, die mit Schlüsselwörtern in Konflikt stehen. Wenn der Feldname nicht mit dem Schlüsselwort in Konflikt steht, können Sie die doppelten Anführungszeichen natürlich weglassen

2) Zeitfunktion

Fürtimestamp müssen Sie zum Vergleichen das Schlüsselwort timestamp hinzufügen. In MySQL können Sie dies jedoch für timestampDirekt vergleichen

-- MySQL写法
SELECT t FROM a WHERE t > '2023-12-01 00:00:00'; 
-- Presto写法
SELECT t FROM a WHERE t > timestamp '2023-12-01 00:00:00';

3) Verwendung der MD5-Funktion

Die MD5-Funktion in Presto übergibt den Typ binary und gibt den Typ binary zurück. Die Zeichenfolge ist

おすすめ

転載: blog.csdn.net/weixin_55629186/article/details/134960183
おすすめ