Μορφοποιητής BigQuery
Μορφοποιήστε το Google BigQuery Standard SQL με κανόνες BigQuery για ονόματα project.dataset.table σε ανάστροφα εισαγωγικά, συμβολοσειρές σε τριπλά εισαγωγικά και ακατέργαστες συμβολοσειρές, σχόλια # και παραμέτρους @query. Η QUALIFY τοποθετείται σε δική της γραμμή, τα SELECT * EXCEPT και REPLACE παραμένουν στην ίδια γραμμή και οι ρήτρες παραθύρου αποκτούν εσοχή. Οι μη κλειστές συμβολοσειρές, τα σχόλια και οι παρενθέσεις αναφέρονται με γραμμή και στήλη, διευκολύνοντας τους αναλυτές και τους μηχανικούς δεδομένων στην επισκόπηση ερωτημάτων.
Συχνές ερωτήσεις
Ποια σύνταξη BigQuery αναγνωρίζεται;
Αναγνωρίζονται ονόματα σε ανάστροφα εισαγωγικά, όπως `project.dataset.table`, συμβολοσειρές σε μονά και διπλά εισαγωγικά με διαφυγές ανάστροφης καθέτου, συμβολοσειρές σε τριπλά εισαγωγικά και τα προθέματα ακατέργαστων συμβολοσειρών r'' και bytes b''. Οι παράμετροι @named και οι μεταβλητές @@system διατηρούνται όπως γράφτηκαν.
Διατηρεί ο μορφοποιητής τα σχόλια με δίεση (#);
Ναι. Το BigQuery δέχεται σχόλια #, καθώς και σχόλια -- και /* */· και τα τρία διατηρούνται στη θέση τους.
Πώς γίνεται ο χειρισμός της QUALIFY;
Η QUALIFY ξεκινά σε δική της γραμμή, όπως οι WHERE και HAVING. Η συνθήκη φίλτρου αποκτά εσοχή από κάτω.
Τι γίνεται με τα SELECT * EXCEPT και REPLACE;
Όταν το EXCEPT ή το REPLACE ακολουθεί αστερίσκο, παραμένει στην ίδια γραμμή με αυτόν. Έτσι, το SELECT * EXCEPT (col) δεν εκλαμβάνεται λανθασμένα ως τελεστής συνόλων EXCEPT.
Διατηρούνται ανέπαφοι οι πίνακες και οι δομές;
Ναι. Οι δείκτες πινάκων, όπως το arr[OFFSET(0)], διατηρούνται όπως γράφτηκαν, ενώ οι κατασκευαστές STRUCT και ARRAY μορφοποιούνται όπως οι άλλες κλήσεις συναρτήσεων.
Πώς διατάσσονται οι συναρτήσεις παραθύρου;
Οι μεγάλες ρήτρες OVER ανοίγουν ένα μπλοκ με εσοχή, με τις PARTITION BY και ORDER BY σε δικές τους γραμμές. Οι σύντομες παραμένουν στην ίδια γραμμή.
Αλλάζει την πεζοκεφαλαία γραφή των λέξεων-κλειδιών;
Όχι. Οι λέξεις-κλειδιά, οι συναρτήσεις και τα ονόματα διατηρούν τα πεζά και κεφαλαία που γράψατε. Αλλάζουν μόνο τα κενά και οι αλλαγές γραμμής.
Ποια σφάλματα εντοπίζονται;
Μη κλειστές συμβολοσειρές, συμβολοσειρές σε τριπλά εισαγωγικά, ονόματα σε ανάστροφα εισαγωγικά και σχόλια μπλοκ, καθώς και μη ισορροπημένες παρενθέσεις, το καθένα με γραμμή και στήλη. Το ερώτημα δεν αποστέλλεται στο BigQuery και δεν έχει κόστος.
Πόσο μεγάλο μπορεί να είναι το αρχείο εισόδου;
Έως 1 MB ανά αίτημα και 128 KB ανά εντολή. Τα σκριπτ με πολλές εντολές μορφοποιούνται μία εντολή κάθε φορά.
Μπορώ να επιλέξω την εσοχή και αποθηκεύεται το ερώτημά μου;
Χρησιμοποιήστε 2 ή 4 κενά ή στηλοθέτες. Το ερώτημα μορφοποιείται μόνο στη μνήμη και δεν αποθηκεύεται ποτέ.