2017-02-07 5 views
0

Ich möchte den BigQuery SQL-Standarddialekt aus Google App Script heraus verwenden. Folgendes funktioniert in BigQuery, wenn "SQLVersion: Legacy SQL verwenden" deaktiviert ist;App-Skript BigQuery Standard-SQL-Anweisung zum Einfügen oder Aktualisieren

INSERT INTO MyDataSet.MyFooBarTable (Id, Foo, Date) VALUES (1, 'bar', current_Date) 

Ich kann glücklich BigQuery von Google Script mit Jobs abfragen und führen Einsätze über einen Append Job (effektiv das gleiche Einsatz Ergebnis ergibt). Ist es möglich, die Standard-SQL-Logik innerhalb des Skripts zu verwenden, um die Einfügung durchzuführen?

Ich habe versucht, #StandardSQL zu der Aussage ohne Freude hinzuzufügen.

+0

entsprechend der Dokumentation 'jobs.query' ist standardmäßig auf Legacy gesetzt, wenn Sie useLegacySql nicht explizit auf false setzen. –

Antwort

1

Sie benötigen die useLegacySql Flag/Parameter auf false gesetzt, um anzuzeigen, dass Sie Standard-SQL verwenden möchten, etwa so:

var job = { 
configuration: { 
    query: { 
    query: 'INSERT INTO MyDataSet.MyFooBarTable (Id, Foo, Date) VALUES (1, \'bar\', current_Date);', 
    useLegacySql: false 
    } 

}};

Ich testete dies in meinem eigenen GAS und arbeitete wie erwartet.

Verwandte Themen