Openrowset-Syntaxprobleme in Azure Synapse

Oct 06 2020

Ich verwende den Azure-Synapsenabfrageeditor, um die folgende Abfrage auszuführen. Dies ist auch ein Beispiel in der Azure-Dokumentation

SELECT
    nyc.filename() AS [filename]
    ,COUNT_BIG(*) AS [rows]
FROM  
    OPENROWSET(
        BULK '../userdata1.parquet',
    DATA_SOURCE = AzureStorage,
    FORMAT_TYPE = PARQUET
    ) nyc
GROUP BY nyc.filename();

Aber es wirft immer

Analysefehler in Zeile: 5, Spalte: 5: Falsche Syntax in der Nähe von 'OPENROWSET'.

Ich konnte jedoch die Create-Anweisung mit vollständigem Schema erfolgreich ausführen und ausgewählte Abfragen für die externe Tabelle ausführen

CREATE EXTERNAL TABLE dbo.userdata1 (
    [registration_dttm] nvarchar(100) NULL,
    [id]                decimal(38,0) NULL,
    [first_name]        nvarchar(100) NULL,
    [last_name]         nvarchar(100) NULL,
      |
      |
      |
)
WITH (
    LOCATION='../userdata1.parquet',
    DATA_SOURCE = AzureStorage,
    FILE_FORMAT=parquet_file_format
);

Version auswählen --

Microsoft Azure SQL Data Warehouse - 10.0.15225.0 8. September 2020 20:17:38 Copyright (c) Microsoft Corporation

Bitte korrigieren Sie mich, wenn etwas nicht stimmt ...

Antworten

1 JoelCochran Oct 06 2020 at 21:20

Sie vermissen das "AS", wenn Sie dem Rowset nyc zuweisen:

SELECT ... FROM
OPENROWSET (...) AS nyc GROUP BY nyc.filename ();