Συναρτήσεις

Υπάρχουν διάφοροι τύποι συναρτήσεων που μπορείτε να χρησιμοποιήσετε σε εκφράσεις.

Θέματα:

Συναρτήσεις αναλυτικών στοιχείων

Οι συναρτήσεις analytics σάς επιτρέπουν να εξερευνάτε τα δεδομένα χρησιμοποιώντας μοντέλα, όπως προβλέψεις, γραμμές τάσης και συμπλέγματα. Εναλλακτικά, μπορείτε να σύρετε και να αποθέσετε συναρτήσεις analytics στο πρόγραμμα επεξεργασίας βιβλίου εργασίας.

Εναλλακτικά, μπορείτε να προσθέσετε προβλέψεις, γραμμές τάσης και συμπλέγματα σε ένα βιβλίο εργασίας μέσω της καρτέλας Analytics του Πλαισίου δεδομένων στο πρόγραμμα επεξεργασίας βιβλίων εργασίας. Ανατρέξτε στην ενότητα Προσθήκη συναρτήσεων στατιστικής ανάλυσης σε απεικονίσεις.

Συνάρτηση Παράδειγμα Περιγραφή Σύνταξη

CLUSTER

CLUSTER((product, company), (billed_quantity, revenue), 'clusterName', 'algorithm=k-means;numClusters=%1;maxIter=%2;useRandomSeed=FALSE;enablePartitioning=TRUE', 5, 10)

Ομαδοποιεί ένα σύνολο εγγραφών βάσει μίας ή περισσότερων εκφράσεων εισόδου, χρησιμοποιώντας το K-Means ή την ιεραρχική δημιουργία συμπλεγμάτων.

CLUSTER((dimension_expr1 , ... dimension_exprN), (expr1, ... exprN), output_column_name, options, [runtime_binded_options])

FORECAST

Παράδειγμα πρόβλεψης εσόδων ανά ημέρα

Αυτό το παράδειγμα επιλέγει την πρόβλεψη εσόδων ανά ημέρα.

FORECAST("A - Sample Sales"."Base Facts"."1- Revenue" Target,
("A - Sample Sales"."Time"."T00 Calendar Date"),'forecast', 'numPeriods=30;predictionInterval=70;') ForecastedRevenue

Παράδειγμα πρόβλεψης εσόδων ανά έτος και τρίμηνο

Αυτό το παράδειγμα επιλέγει την πρόβλεψη εσόδων ανά έτος και τρίμηνο.

FORECAST("A - Sample Sales"."Base Facts"."1- Revenue",
("A - Sample Sales"."Time"."T01 Year" timeYear, "A - Sample Sales"."Time"."T02 Quarter" TimeQuarter),'forecast', 'numPeriods=30;predictionInterval=70;') ForecastedRevenue

Δημιουργεί ένα μοντέλο χρονικής σειράς της καθορισμένης μέτρησης ως προς τη σειρά, χρησιμοποιώντας εκθετική εξομάλυνση (ETS) ή εποχικό ARIMA ή ARIMA. Αυτή η συνάρτηση επιστρέφει μια πρόβλεψη για ένα σύνολο περιόδων που ορίζεται από το όρισμα numPeriods.

Ανατρέξτε επίσης παρακάτω στις πρόσθετες επιλογές της συνάρτησης FORECAST.

FORECAST(measure, ([series]), output_column_name, options,[runtime_binded_options])])

Όπου:

  • measure αντιπροσωπεύει τη μέτρηση για την πρόβλεψη, για παράδειγμα, δεδομένα εσόδων.

  • series αντιπροσωπεύει το χρονικό σημείο που χρησιμοποιείται για τη δημιουργία του μοντέλου πρόβλεψης. Η σειρά είναι μια λίστα με μία ή περισσότερες στήλες διάστασης χρόνου. Αν παραλειφθεί το όρισμα series, η χρονική λεπτομέρεια καθορίζεται από το ερώτημα.

  • output_column_name αντιπροσωπεύει τα έγκυρα ονόματα στηλών των forecast, low, high και predictionInterval.

  • options αντιπροσωπεύει μια λίστα συμβολοσειρών με ζεύγη ονομάτων/τιμών που διαχωρίζονται με ερωτηματικό (;). Η τιμή μπορεί να περιέχει %1 ... %N που καθορίζονται στο runtime_binded_options.

  • runtime_binded_options αντιπροσωπεύει μια λίστα διαχωρισμένων με κόμμα στηλών και επιλογών. Οι τιμές για αυτές τις στήλες και τις επιλογές αποτιμώνται και αναλύονται κατά τον χρόνο εκτέλεσης των μεμονωμένων ερωτημάτων.

Ανατρέξτε επίσης παρακάτω στις πρόσθετες επιλογές της συνάρτησης FORECAST.

OUTLIER

OUTLIER((product, company), (billed_quantity, revenue), 'isOutlier', 'algorithm=kmeans')

Ταξινομεί μια εγγραφή ως ακραία τιμή βάσει μίας ή περισσότερων εκφράσεων εισόδου, χρησιμοποιώντας το K-Means ή την ιεραρχική δημιουργία συμπλεγμάτων ή πολυμεταβλητούς αλγόριθμους εντοπισμού ακραίων τιμών.

OUTLIER((dimension_expr1 , ... dimension_exprN), (expr1, ... exprN), output_column_name, options, [runtime_binded_options])

REGR

REGR(revenue, (discount_amount), (product_type, brand), 'fitted', '')

Προσαρμόζεται σε ένα γραμμικό μοντέλο και επιστρέφει τις τιμές ή το μοντέλο προσαρμογής. Αυτή η συνάρτηση μπορεί να χρησιμοποιηθεί για προσαρμογή μιας γραμμικής καμπύλης σε δύο μέτρα.

REGR(y_axis_measure_expr, (x_axis_expr), (category_expr1, ..., category_exprN), output_column_name, options, [runtime_binded_options])

TRENDLINE

TRENDLINE(revenue, (calendar_year, calendar_quarter, calendar_month) BY (product), 'LINEAR', 'VALUE')

Η Oracle συνιστά να εφαρμόσετε μια Γραμμή τάσης χρησιμοποιώντας την ιδιότητα Προσθήκη στατιστικών κατά την προβολή μιας απεικόνισης. Ανατρέξτε στην ενότητα Προσαρμογή ιδιοτήτων απεικόνισης.

Προσαρμόζεται σε ένα γραμμικό ή εκθετικό μοντέλο και επιστρέφει τις τιμές ή το μοντέλο προσαρμογής. Το numeric_expr αναπαριστά την τιμή Y για την τάση και το series (στήλες ώρας) αναπαριστά την τιμή X.

TRENDLINE(numeric_expr, ([series]) BY ([partitionBy]), model_type, result_type)

Επιλογές συνάρτησης FORECAST Ο ακόλουθος πίνακας παρουσιάζει τις διαθέσιμες επιλογές για χρήση με τη συνάρτηση FORECAST.

Όνομα επιλογής Τιμές Περιγραφή
numPeriods Ακέραιος Ο αριθμός των περιόδων για πρόβλεψη.
predictionInterval 0 έως 100, όπου οι υψηλότερες τιμές υποδεικνύουν υψηλότερη αξιοπιστία Το επίπεδο αξιοπιστίας για την πρόβλεψη.
modelType

ETS (Εκθετική εξομάλυνση)

SeasonalArima

ARIMA

Το μοντέλο που θα χρησιμοποιηθεί για την πρόβλεψη.
useBoxCox

TRUE

FALSE

Εάν η τιμή είναι TRUE, χρησιμοποιήστε μετασχηματισμό Box-Cox.
lambdaValue Δεν ισχύει

Η παράμετρος μετασχηματισμού Box-Cox.

Αγνοήστε το αν η τιμή είναι NULL ή όταν το useBoxCox είναι FALSE.

Διαφορετικά, το μοντέλο μετασχηματίζεται πριν το μοντέλο εκτιμηθεί.

trendDamp

TRUE

FALSE

Αυτό αφορά ειδικά το μοντέλο εκθετικής αντιστάθμισης.

Εάν η τιμή είναι TRUE, χρησιμοποιήστε την τάση damped. Εάν η τιμή είναι FALSE ή NULL, χρησιμοποιήστε μη damped τάση.

errorType

Δεν ισχύει

Αυτό αφορά ειδικά το μοντέλο εκθετικής αντιστάθμισης.
trendType

N (Χωρίς)

A (Προσθετικά)

M (Πολλαπλασιαστικά)

Z (Αυτόματη επιλογή)

Αυτό αφορά ειδικά το μοντέλο εκθετικής αντιστάθμισης
seasonType

N (Χωρίς)

A (Προσθετικά)

M (Πολλαπλασιαστικά)

Z (Αυτόματη επιλογή)

Αυτό αφορά ειδικά το μοντέλο εκθετικής αντιστάθμισης
modelParamIC

ic_auto

ic_aicc

ic_bic

ic_auto (αυτή είναι η προεπιλογή)

Το κριτήριο πληροφοριών (IC) που χρησιμοποιείται στην επιλογή μοντέλου.

Συναρτήσεις μετατροπής

Οι συναρτήσεις μετατροπής μετατρέπουν μια τιμή από μια μορφή σε μια άλλη.

Συνάρτηση Παράδειγμα Περιγραφή Σύνταξη

CAST

CAST(hiredate AS CHAR(40)) FROM employee

Αλλάζει τον τύπο δεδομένων μιας έκφρασης ή μιας λεκτικής σταθεράς null σε έναν άλλο τύπο δεδομένων. Για παράδειγμα, μπορείτε να αλλάξετε ένα customer_name (έναν τύπο δεδομένων CHAR ή VARCHAR) ή birthdate (μια σταθερά ημερομηνίας/ώρας).

Χρησιμοποιήστε τη συνάρτηση CAST για να αλλάξετε έναν τύπο δεδομένων Ημερομηνία .

Μην χρησιμοποιείτε τη συνάρτηση TODATE .

CAST(expr AS type)

IFNULL

IFNULL(Sales, 0)

Ελέγχει εάν μια έκφραση αποτιμάται σε τιμή null και, στην περίπτωση αυτή, εκχωρεί τη συγκεκριμένη τιμή στην έκφραση.

IFNULL(expr, value)

INDEXCOL

SELECT INDEXCOL(VALUEOF ("NQ_SESSION"."GEOGRAPHY_LEVEL"), Country, State, City), Revenue FROM Sales

Χρησιμοποιεί εξωτερικές πληροφορίες για να επιστρέψει την κατάλληλη στήλη που θα μπορεί να δει ο συνδεδεμένος χρήστης.

INDEXCOL([integer literal], [expr1] [, [expr2], ?-])

NULLIF

SELECT e.last_name, NULLIF(e.job_id, j.job_id) "Old Job ID" FROM employees e, job_history j WHERE e.employee_id = j.employee_id ORDER BY last_name, "Old Job ID"΋

Συγκρίνει τις δύο εκφράσεις. Αν είναι ίσες, τότε η συνάρτηση επιστρέφει NULL. Αν δεν είναι ίσες, τότε η συνάρτηση επιστρέφει την πρώτη έκφραση. Δεν είναι δυνατός ο καθορισμός της λεκτικής σταθεράς NULL για την πρώτη έκφραση.

NULLIF([expression], [expression])

To_DateTime

SELECT To_DateTime ('2009-03-0301:01:00', 'yyyy-mm-dd hh:mi:ss') FROM sales

Μετατρέπει σταθερές συμβολοσειράς της μορφής Ημερομηνία/ώρα σε έναν τύπο δεδομένων Ημερομηνία/ώρα .

To_DateTime([expression], [literal])

VALUEOF

SalesSubjectArea.Customer.Region = VALUEOF("Region Security"."REGION")

Αναφέρει την τιμή μιας μεταβλητής σημασιολογικού μοντέλου σε ένα φίλτρο.

Χρησιμοποιήστε μεταβλητές expr ως ορίσματα της συνάρτησης VALUEOF. Κάνετε αναφορά ονομαστικά σε στατικές μεταβλητές σημασιολογικού μοντέλου.

VALUEOF(expr)

Συναρτήσεις εξαγωγής ημερομηνιών

Αυτές οι συναρτήσεις υπολογίζουν ή στρογγυλοποιούν προς τα κάτω τιμές χρονοσημάνσεων. Ο υπολογισμός ή η στρογγυλοποίηση γίνεται στην πλησιέστερη καθορισμένη χρονική περίοδο (π.χ. ώρα, ημέρα, εβδομάδα, μήνας και τρίμηνο).

Μπορείτε να χρησιμοποιήσετε τις υπολογισμένες χρονοσημάνσεις για τη συγκέντρωση δεδομένων με διαφορετικό βαθμό λεπτομέρειας. Για παράδειγμα, μπορείτε να εφαρμόσετε τη συνάρτηση EXTRACTDAY() σε ημερομηνίες παραγγελιών πωλήσεων για τα μεσάνυχτα της ημέρας πραγματοποίησης των παραγγελιών, ώστε να συγκεντρώνετε τα δεδομένα ανά ημέρα.

Συνάρτηση Παράδειγμα Περιγραφή Σύνταξη

Εξαγωγή ημέρας

EXTRACTDAY("Ημερομηνία παραγγελίας")
  • 2/22/1967 3:02:01 AM - Επιστρέφει 2/22/1967 12:00:00 AM.
  • 9/2/2022 10:38:21 AM - Επιστρέφει 9/2/2022 12:00:00 AM.

Επιστρέφει μια χρονοσήμανση για τα μεσάνυχτα (12 ΠΜ) της ημέρας της τιμής εισόδου. Για παράδειγμα, αν η χρονοσήμανση εισόδου είναι για 3:02:01 ΠΜ της 22ας Φεβρουαρίου, η συνάρτηση επιστρέφει τη χρονοσήμανση για 12:00:00 ΠΜ της 22ας Φεβρουαρίου.

EXTRACTDAY(expr)

Εξαγωγή ώρας

EXTRACTHOUR("Ημερομηνία παραγγελίας")
  • 2/22/1967 3:02:01 AM - Επιστρέφει 2/22/1967 3:00:00 AM.
  • 6/17/1999 11:18:30 PM επιστρέφει 6/17/1999 11:00:00 PM.

Επιστρέφει μια χρονοσήμανση για την αρχή της ώρας της τιμής εισόδου. Για παράδειγμα, αν η χρονοσήμανση εισόδου είναι για 11:18:30 ΜΜ, η συνάρτηση επιστρέφει τη χρονοσήμανση για 11:00:00 ΜΜ.

EXTRACTHOUR (expr)

Εξαγωγή ώρας της ημέρας

EXTRACTHOUROFDAY("Ημερομηνία παραγγελίας")
  • 2014/09/24 10:58:00 - Επιστρέφει 2000/01/01 10:00:00.
  • 2014/08/13 11:10:00 επιστρέφει 2000/01/01 11:00:00

Επιστρέφει μια χρονοσήμανση της οποίας η ώρα ισούται με την ώρα της τιμής εισόδου με προεπιλεγμένες τιμές για το έτος, τον μήνα, την ημέρα, τα λεπτά και τα δευτερόλεπτα.

EXTRACTHOUROFDAY(expr)

Εξαγωγή χιλιοστού δευτερολέπτου

EXTRACTMILLISECOND("Ημερομηνία παραγγελίας")
  • 1997/01/07 15:32:02.150 - Επιστρέφει 1997/01/07 15:32:02.150.
  • 1997/01/07 18:42:01.265 - Επιστρέφει 1997/01/07 18:42:01.265.
Επιστρέφει μια χρονοσήμανση που περιέχει τα χιλιοστά δευτερολέπτου για την τιμή εισόδου. Για παράδειγμα, αν η χρονοσήμανση εισόδου είναι για 15:32:02.150, η συνάρτηση επιστρέφει τη χρονοσήμανση για 15:32:02.150.

EXTRACTMILLISECOND(expr)

Εξαγωγή λεπτού

EXTRACTMINUTE("Ημερομηνία παραγγελίας")
  • 6/17/1999 11:18:00 PM - Επιστρέφει 6/17/1999 11:18:00 PM.
  • 9/2/2022 10:38:21 AM - Επιστρέφει 9/2/2022 10:38:00 AM.

Επιστρέφει μια χρονοσήμανση για την αρχή του λεπτού της τιμής εισόδου. Για παράδειγμα, αν η χρονοσήμανση εισόδου είναι για 11:38:21 ΠΜ, η συνάρτηση επιστρέφει τη χρονοσήμανση για 11:38:00 ΠΜ.

EXTRACTMINUTE (expr)

Εξαγωγή μήνα

EXTRACTMONTH("Ημερομηνία παραγγελίας")
  • 2/22/1967 3:02:01 AM - Επιστρέφει 2/1/1967 12:00:00 AM.
  • 6/17/1999 11:18:00 PM - Επιστρέφει 6/1/1999 12:00:00 AM.

Επιστρέφει μια χρονοσήμανση για την πρώτη ημέρα του μήνα της τιμής εισόδου. Για παράδειγμα, αν η χρονοσήμανση εισόδου είναι για 22 Φεβρουαρίου, η συνάρτηση επιστρέφει τη χρονοσήμανση για 1 Φεβρουαρίου.

EXTRACTMONTH(expr)

Εξαγωγή τριμήνου

EXTRACTQUARTER("Ημερομηνία παραγγελίας")
  • 2/22/1967 3:02:01 AM - Επιστρέφει 1/1/1967 12:00:00 AM, την πρώτη ημέρα του πρώτου οικονομικού τριμήνου.
  • 6/17/1999 11:18:00 PM - Επιστρέφει 4/1/1999 12:00:00 AM, την πρώτη ημέρα του δεύτερου οικονομικού τριμήνου.

  • 9/2/2022 10:38:21 AM - Επιστρέφει 7/1/2022 12:00:00 AM, την πρώτη ημέρα του τρίτου οικονομικού τριμήνου.

    Συμβουλή: Χρησιμοποιήστε τη συνάρτηση QUARTER (expr) για τον υπολογισμό μόνο του τακτικού αριθμητικού τριμήνου από την επιστρεφόμενη χρονοσήμανση.

Επιστρέφει μια χρονοσήμανση για την πρώτη ημέρα του τριμήνου της τιμής εισόδου. Για παράδειγμα, αν η χρονοσήμανση εισόδου είναι στο τρίτο οικονομικό τρίμηνο, η συνάρτηση επιστρέφει τη χρονοσήμανση για 1 Ιουλίου.

EXTRACTQUARTER(expr)

Εξαγωγή δευτερολέπτου

EXTRACTSECOND("Ημερομηνία παραγγελίας")
  • 1997/01/07 15:32:02.150 - Επιστρέφει 1997/01/07 15:32:02.
  • 1997/01/07 20:44:18.163 - Επιστρέφει 1997/01/07 20:44:18.

Επιστρέφει μια χρονοσήμανση για την τιμή εισόδου. Για παράδειγμα, αν η χρονοσήμανση εισόδου είναι για 15:32:02.150, η συνάρτηση επιστρέφει τη χρονοσήμανση για 15:32:02.

EXTRACTSECOND(expr)

Εξαγωγή εβδομάδας

EXTRACTWEEK("Ημερομηνία παραγγελίας")
  • 2014/09/24 10:58:00 - Επιστρέφει 2014/09/21.

  • 2014/08/13 11:10:00 - Επιστρέφει 2014/08/10.

Επιστρέφει την ημερομηνία της πρώτης ημέρας της εβδομάδας (Κυριακή) της τιμής εισόδου. Για παράδειγμα, αν η χρονοσήμανση εισόδου είναι για Τετάρτη, 24 Σεπτεμβρίου, η συνάρτηση επιστρέφει τη χρονοσήμανση για Κυριακή, 21 Σεπτεμβρίου.

Σημείωση: Αν η πρώτη ημέρα της εβδομάδας (δηλαδή, η Κυριακή) είναι στο προηγούμενο έτος και θα επηρεάσει έτσι αρνητικά τη συγκέντρωση, η συνάρτηση επιστρέφει την 7η ημέρα της εβδομάδας (δηλαδή, το Σάββατο) στο τρέχον έτος αντί της πρώτης ημέρας της εβδομάδας στο προηγούμενο έτος. Για παράδειγμα, οι ημερομηνίες 1/1/24, 1/2/24 και 1/3/24 συναθροίζονται όλες στο Σάββατο 1/6/24 και όχι στην Κυριακή 12/29/23.

EXTRACTWEEK(expr)

Εξαγωγή έτους

EXTRACTYEAR("Ημερομηνία παραγγελίας")
  • 1967/02/22 03:02:01 - Επιστρέφει 1967/01/01 00:00:00.
  • 1999/06/17 23:18:00 - Επιστρέφει 1999/01/01 00:00:00.

Επιστρέφει μια χρονοσήμανση για την 1η Ιανουαρίου του έτους της τιμής εισόδου. Για παράδειγμα, αν η χρονοσήμανση εισόδου είναι το 1967, η συνάρτηση επιστρέφει τη χρονοσήμανση για την 1η Ιανουαρίου 1967.

EXTRACTYEAR (expr)

Συμβουλές για τη χρήση διαστάσεων ημερομηνίας σε περιοχές θέματος

Ακολουθούν μερικές συμβουλές για καλύτερα αποτελέσματα όταν χρησιμοποιείτε ημερομηνίες περιοχής θέματος σε υπολογισμούς.

Προσθήκη ημερομηνίας περιοχής θέματος σε έναν υπολογισμό

Αν σύρετε μια ημερομηνία από μια περιοχή θέματος απευθείας σε έναν υπολογισμό και την επεξεργαστείτε ως συμβολοσειρά ή ακέραιο, θα επιστραφεί ένα σφάλμα. Αυτό συμβαίνει γιατί η υποκείμενη τιμή ημερομηνίας είναι μια χρονική ένδειξη.

Σε αυτή την περίπτωση, χρησιμοποιήστε μία από τις Συναρτήσεις εξαγωγής ημερομηνιών για την ερμηνεία της ημερομηνίας.

Για παράδειγμα, μπορεί να έχετε αυτές τις ημερομηνίες περιοχής θέματος.
Ακολουθεί η περιγραφή για GUID-39C55B3A-A055-45D3-9904-948680247C08-default.png
.png''

Για να εξαγάγετε τους μήνες από αυτές τις περιοχές θέματος, χρησιμοποιήστε τη συνάρτηση ExtractMonthOfYear:

case when monthname(ExtractMonthOfYear("Date")) in ('Jan' ,'Feb', 'Mar') 
THEN 'Q1' 
ELSE 'Rest of the year' END

Συναρτήσεις εμφάνισης

Οι συναρτήσεις εμφάνισης λειτουργούν στο σύνολο αποτελεσμάτων ενός ερωτήματος.

Συνάρτηση Παράδειγμα Περιγραφή Σύνταξη

BottomN

BottomN(Sales, 10)

Επιστρέφει τις χαμηλότερες τιμές ν της έκφρασης, ταξινομημένες από τη χαμηλότερη στην υψηλότερη.

BottomN([NumericExpression], [integer])

FILTER

FILTER(Sales USING Product = 'widget')

Υπολογίζει την έκφραση χρησιμοποιώντας το δεδομένο προσυναθροισμένο φίλτρο.

FILTER(measure USING filter_expr)

MAVG

MAVG(Sales, 10)

Υπολογίζει έναν κινητό μέσο όρο για τις τελευταίες ν σειρές δεδομένων στο σύνολο αποτελεσμάτων, συμπεριλαμβανομένης της τρέχουσας σειράς.

MAVG([NumericExpression], [integer])

MSUM

SELECT Month, Revenue, MSUM(Revenue, 3) as 3_MO_SUM FROM Sales

Υπολογίζει ένα κινητό άθροισμα για τις τελευταίες ν σειρές δεδομένων, συμπεριλαμβανομένης της τρέχουσας σειράς.

Το άθροισμα για την πρώτη σειρά είναι ίσο με την αριθμητική έκφραση για την πρώτη σειρά. Το άθροισμα για τη δεύτερη σειρά υπολογίζεται λαμβάνοντας το άθροισμα των δύο πρώτων σειρών δεδομένων, κ.λπ. Όταν φτάσετε στη νιοστή σειρά, το άθροισμα υπολογίζεται με βάση τις τελευταίες n σειρές δεδομένων.

MSUM([NumericExpression], [integer])

NTILE

NTILE(Sales, 100)

Καθορίζει την τιμή ως προς μια περιοχή τιμών καθορισμένη από το χρήστη. Επιστρέφει ακεραίους για την αναπαράσταση κάθε εύρους τιμών κατατάξεων. Το παράδειγμα δείχνει το εύρος τιμών 1 έως 100, με χαμηλότερη πώληση = 1 και υψηλότερη πώληση = 100.

NTILE([NumericExpresssion], [integer])

PERCENTILE

PERCENTILE(Sales)

Υπολογίζει την κατάταξη ποσοστού για κάθε τιμή που ικανοποιεί το όρισμα αριθμητικής έκφρασης. Τα εύρη τιμών κατάταξης ποσοστημορίου είναι μεταξύ 0 (ποσοστημόριο 1) και 1 (ποσοστημόριο 100).

PERCENTILE([NumericExpression])

RANK

RANK(Sales)

Υπολογίζει την κατάταξη για κάθε τιμή που ικανοποιεί το όρισμα αριθμητικής έκφρασης. Ο υψηλότερος αριθμός αντιστοιχείται σε κατάταξη 1 και κάθε διαδοχική κατάταξη αντιστοιχείται στον επόμενο διαδοχικό ακέραιο (2, 3, 4,...). Εάν ορισμένες τιμές είναι ίσες, αντιστοιχίζονται στην ίδια κατάταξη (για παράδειγμα, 1, 1, 1, 4, 5, 5, 7...).

RANK([NumericExpression])

RCOUNT

SELECT month, profit, RCOUNT(profit) FROM sales WHERE profit > 200

Δέχεται ένα σύνολο εγγραφών ως δεδομένα εισόδου και καταμετρά τον αριθμό των εγγραφών που προσπελάστηκαν μέχρι τώρα.

RCOUNT([NumericExpression])

RMAX

SELECT month, profit, RMAX(profit) FROM sales

Δέχεται ένα σύνολο εγγραφών ως δεδομένα εισόδου και εμφανίζει τη μέγιστη τιμή βάσει των εγγραφών που προσπελάστηκαν μέχρι τώρα. Ο καθορισμένος τύπος δεδομένων πρέπει να έχει τη δυνατότητα ταξινόμησης.

RMAX([NumericExpression])

RMIN

SELECT month, profit, RMIN(profit) FROM sales

Δέχεται ένα σύνολο εγγραφών ως δεδομένα εισόδου και εμφανίζει την ελάχιστη τιμή βάσει των εγγραφών που προσπελάστηκαν μέχρι τώρα. Ο καθορισμένος τύπος δεδομένων πρέπει να έχει τη δυνατότητα ταξινόμησης.

RMIN([NumericExpression])

RSUM

SELECT month, revenue, RSUM(revenue) as RUNNING_SUM FROM sales

Υπολογίζει ένα τρέχον άθροισμα βάσει των εγγραφών που προσπελάστηκαν μέχρι τώρα.

Το άθροισμα για την πρώτη σειρά είναι ίσο με την αριθμητική έκφραση για την πρώτη σειρά. Το άθροισμα για τη δεύτερη σειρά υπολογίζεται λαμβάνοντας το άθροισμα των δύο πρώτων σειρών δεδομένων, κ.λπ.

RSUM([NumericExpression])

TopN

TOPN(Sales, 10)

Επιστρέφει τις υψηλότερες τιμές ν της έκφρασης, ταξινομημένες από την υψηλότερη στη χαμηλότερη.

TOPN([NumericExpression], [integer])

Συμβουλές για τη χρήση των συναρτήσεων εμφάνισης

  • FILTER - Αν δημιουργείτε μια αναφορά χρησιμοποιώντας μια περιοχή θέματος, χρησιμοποιήστε τις ιεραρχίες που ορίζονται στην περιοχή θέματος αντί να φιλτράρετε απευθείας τις στήλες ιεραρχίας σε έναν υπολογισμό. Με άλλα λόγια, αν μια περιοχή θέματος έχει την ιεραρχία Time\Fiscal Year\Fiscal Quarter, αποφύγετε τα εξής:

    filter (<measure> using fiscal_quarter = 'Q4')

    filter (<measure> using fiscal_quarter = 'Q3')

    filter (<measure> using fiscal_year = 'FY24')

Συναρτήσεις αξιολόγησης

Οι συναρτήσεις αξιολόγησης είναι συναρτήσεις βάσης δεδομένων που μπορούν να χρησιμοποιηθούν για τη μεταβίβαση εκφράσεων και τη λήψη σύνθετων υπολογισμών.

Οι ενσωματωμένες συναρτήσεις βάσης δεδομένων ενδέχεται να απαιτούν μία ή περισσότερες στήλες. Σε αυτές τις στήλες γίνεται παραπομπή από το %1 ... %N εντός της συνάρτησης. Οι πραγματικές στήλες θα πρέπει να παρατίθενται μετά τη συνάρτηση.

Συνάρτηση Παράδειγμα Περιγραφή Σύνταξη

EVALUATE

SELECT EVALUATE('instr(%1, %2)', address, 'Foster City') FROM employees

Μεταβιβάζει την καθορισμένη συνάρτηση βάσης δεδομένων με προαιρετικές στήλες παραπομπής ως παραμέτρους στη βάση δεδομένων για αξιολόγηση.

EVALUATE([string expression], [comma separated expressions])

EVALUATE_AGGR

EVALUATE_AGGR('REGR_SLOPE(%1, %2)', sales.quantity, market.marketkey)

Μεταβιβάζει την καθορισμένη συνάρτηση βάσης δεδομένων με προαιρετικές στήλες παραπομπής ως παραμέτρους στη βάση δεδομένων για αξιολόγηση. Αυτή η συνάρτηση προορίζεται για αθροιστικές συναρτήσεις με μια φράση GROUP BY .

EVALUATE_AGGR('db_agg_function(%1...%N)' [AS datatype] [, column1, columnN])

Μαθηματικές συναρτήσεις

Οι μαθηματικές συναρτήσεις που περιγράφονται στην παρούσα ενότητα εκτελούν μαθηματικές πράξεις.

Συνάρτηση Παράδειγμα Περιγραφή Σύνταξη

ABS

ABS(Profit)

Υπολογίζει την απόλυτη τιμή μιας αριθμητικής έκφρασης.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως αριθμητική τιμή.

ABS(expr)

ACOS

ACOS(1)

Υπολογίζει το τόξο συνημίτονου μιας αριθμητικής έκφρασης.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως αριθμητική τιμή.

ACOS(expr)

ASIN

ASIN(1)

Υπολογίζει το τόξο ημιτόνου μιας αριθμητικής έκφρασης.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως αριθμητική τιμή.

ASIN(expr)

ATAN

ATAN(1)

Υπολογίζει το τόξο εφαπτομένης μιας αριθμητικής έκφρασης.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως αριθμητική τιμή.

ATAN(expr)

ATAN2

ATAN2(1, 2)

Υπολογίζει το τόξο εφαπτομένης του y /x, όπου y είναι η πρώτη αριθμητική παράσταση και x είναι η δεύτερη αριθμητική παράσταση.

ATAN2(expr1, expr2)

CEILING

CEILING(Profit)

Στρογγυλοποιεί μια μη ακέραια αριθμητική παράσταση στον επόμενο μεγαλύτερο ακέραιο. Εάν η αριθμητική έκφραση δίνει έναν ακέραιο, τότε η συνάρτηση CEILING επιστρέφει τον συγκεκριμένο ακέραιο.

CEILING(expr)

COS

COS(1)

Υπολογίζει το συνημίτονο μιας αριθμητικής έκφρασης.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως αριθμητική τιμή.

COS(expr)

COT

COT(1)

Υπολογίζει τη συνεφαπτομένη μιας αριθμητικής έκφρασης.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως αριθμητική τιμή.

COT(expr)

DEGREES

DEGREES(1)

Μετατρέπει μια έκφραση από ακτίνια σε μοίρες.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως αριθμητική τιμή.

DEGREES(expr)

EXP

EXP(4)

Υψώνει την τιμή στην καθορισμένη δύναμη. Υπολογίζει το e ανυψωμένο στη ν-οστή δύναμη, όπου e είναι η βάση του φυσικού λογάριθμου.

EXP(expr)

ExtractBit

Int ExtractBit(1, 5)

Ανακτά ένα bit σε μια συγκεκριμένη θέση σε έναν ακέραιο. Επιστρέφει έναν ακέραιο που είναι το 0 ή το 1, ανάλογα με τη θέση του bit.

ExtractBit([Source Number], [Digits])

FLOOR

FLOOR(Profit)

Στρογγυλοποιεί μια μη ακέραια αριθμητική παράσταση στον επόμενο χαμηλότερο ακέραιο. Εάν η αριθμητική έκφραση δίνει έναν ακέραιο, τότε η συνάρτηση FLOOR επιστρέφει τον συγκεκριμένο ακέραιο.

FLOOR(expr)

LOG

LOG(1)

Υπολογίζει τον φυσικό λογάριθμο μιας έκφρασης.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως αριθμητική τιμή.

LOG(expr)

LOG10

LOG10(1)

Υπολογίζει τον λογάριθμο με βάση 10 μιας έκφρασης.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως αριθμητική τιμή.

LOG10(expr)

MOD

MOD(10, 3)

Διαιρεί την πρώτη αριθμητική έκφραση με τη δεύτερη και επιστρέφει το υπόλοιπο του πηλίκου.

MOD(expr1, expr2)

PI

PI()

Επιστρέφει τη σταθερή τιμή του π.

PI()

POWER

POWER(Profit, 2)

Παίρνει την πρώτη αριθμητική έκφραση και την υψώνει στη δύναμη που καθορίζει η δεύτερη αριθμητική έκφραση.

POWER(expr1, expr2)

RADIANS

RADIANS(30)

Μετατρέπει μια έκφραση από μοίρες σε ακτίνια.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως αριθμητική τιμή.

RADIANS(expr)

RAND

RAND()

Επιστρέφει έναν ψευδοτυχαίο αριθμό μεταξύ 0 και 1.

RAND()

RANDFromSeed

RAND(2)

Επιστρέφει έναν ψευδοτυχαίο αριθμό στη βάση μιας τιμής ενσωμάτωσης. Για δεδομένη τιμή ενσωμάτωσης, δημιουργείται το ίδιο σύνολο τυχαίων αριθμών.

RAND(expr)

ROUND

ROUND(2,166000, 2)

Στρογγυλοποιεί μια αριθμητική έκφραση σε n ψηφία ακρίβειας.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως αριθμητική τιμή.

integer είναι οποιοσδήποτε θετικός ακέραιος αριθμός που αντιστοιχεί στον αριθμό των ψηφίων ακρίβειας.

ROUND(expr, integer)

SIGN

SIGN(Profit)

Επιστρέφει τα ακόλουθα:

  • 1, εάν η αριθμητική έκφραση δίνει θετικό αριθμό

  • -1, εάν η αριθμητική έκφραση δίνει αρνητικό αριθμό

  • 0, εάν η αριθμητική έκφραση δίνει μηδέν

SIGN(expr)

SIN

SIN(1)

Υπολογίζει το ημίτονο μιας αριθμητικής έκφρασης.

SIN(expr)

SQRT

SQRT(7)

Υπολογίζει την τετραγωνική ρίζα του ορίσματος μιας αριθμητικής έκφρασης. Η αριθμητική έκφραση πρέπει να είναι μη αρνητικός αριθμός.

SQRT(expr)

TAN

TAN(1)

Υπολογίζει τη εφαπτομένη μιας αριθμητικής έκφρασης.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως αριθμητική τιμή.

TAN(expr)

TRUNCATE

TRUNCATE(45.12345, 2)

Περικόπτει έναν δεκαδικό αριθμό για να επιστραφεί ένας συγκεκριμένος αριθμός θέσεων από την υποδιαστολή.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως αριθμητική τιμή.

integer είναι οποιοσδήποτε θετικός ακέραιος αριθμός που αντιστοιχεί στον αριθμό των χαρακτήρων στα δεξιά της υποδιαστολής.

TRUNCATE(expr, integer)

Εκτέλεση συναρτήσεων συνάθροισης

Οι εκτελούμενες συναρτήσεις συνάθροισης εκτελούν λειτουργίες σε πολλαπλές τιμές για τη δημιουργία αποτελεσμάτων συνοπτικής αναφοράς.

Συνάρτηση Παράδειγμα Περιγραφή Σύνταξη

MAVG

 

Υπολογίζει έναν κινητό μέσο όρο για τις τελευταίες ν σειρές δεδομένων στο σύνολο αποτελεσμάτων, συμπεριλαμβανομένης της τρέχουσας σειράς.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως αριθμητική τιμή. integer είναι οποιοσδήποτε θετικός ακέραιος αριθμός. Αναπαριστά το μέσο όρο των τελευταίων ν σειρών δεδομένων.

MAVG(expr, integer)

MSUM

select month, revenue, MSUM(revenue, 3) as 3_MO_SUM from sales_subject_area

Υπολογίζει ένα κινητό άθροισμα για τις τελευταίες ν σειρές δεδομένων, συμπεριλαμβανομένης της τρέχουσας σειράς.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως αριθμητική τιμή. integer είναι οποιοσδήποτε θετικός ακέραιος αριθμός. Αναπαριστά το άθροισμα των τελευταίων ν σειρών δεδομένων.

MSUM(expr, integer)

RSUM

SELECT month, revenue, RSUM(revenue) as RUNNING_SUM from sales_subject_area

Υπολογίζει ένα τρέχον άθροισμα βάσει των εγγραφών που προσπελάστηκαν μέχρι τώρα.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως αριθμητική τιμή.

RSUM(expr)

RCOUNT

select month, profit, RCOUNT(profit) from sales_subject_area where profit > 200

Δέχεται ένα σύνολο εγγραφών ως δεδομένα εισόδου και καταμετρά τον αριθμό των εγγραφών που προσπελάστηκαν μέχρι τώρα.

expr είναι μια παράσταση οποιουδήποτε τύπου δεδομένων.

RCOUNT(expr)

RMAX

SELECT month, profit,RMAX(profit) from sales_subject_area

Δέχεται ένα σύνολο εγγραφών ως δεδομένα εισόδου και εμφανίζει τη μέγιστη τιμή βάσει των εγγραφών που προσπελάστηκαν μέχρι τώρα.

expr είναι μια παράσταση οποιουδήποτε τύπου δεδομένων.

RMAX(expr)

RMIN

select month, profit,RMIN(profit) from sales_subject_area

Δέχεται ένα σύνολο εγγραφών ως δεδομένα εισόδου και εμφανίζει την ελάχιστη τιμή βάσει των εγγραφών που προσπελάστηκαν μέχρι τώρα.

expr είναι μια παράσταση οποιουδήποτε τύπου δεδομένων.

RMIN(expr)

Χωρικές συναρτήσεις

Οι χωρικές συναρτήσεις σάς επιτρέπουν να εκτελείτε γεωγραφικές αναλύσεις κατά τη μοντελοποίηση δεδομένων. Για παράδειγμα, θα μπορούσατε να υπολογίσετε την απόσταση μεταξύ δύο γεωγραφικών περιοχών (γνωστών ως "σχήματα" ή πολύγωνα").

Σημείωση:

Δεν μπορείτε να χρησιμοποιήσετε αυτές τις χωρικές συναρτήσεις σε προσαρμοσμένους υπολογισμούς για βιβλία εργασίας απεικονίσεων.
Συνάρτηση Παράδειγμα Περιγραφή Σύνταξη
GeometryArea

GeometryArea(Shape)

Υπολογίζει την περιοχή που καταλαμβάνει ένα σχήμα.

GeometryArea(Shape)

GeometryDistance

GeometryDistance(TRIP_START, TRIP_END)

Υπολογίζει την απόσταση μεταξύ δύο σχημάτων.

GeometryDistance(Shape 1, Shape 2)

GeometryLength

GeometryLength(Shape)

Υπολογίζει την περιφέρεια ενός σχήματος.

GeometryLength(Shape)

GeometryRelate

GeometryRelate(TRIP_START, TRIP_END)

Καθορίζει εάν ένα σχήμα είναι μέσα σε ένα άλλο σχήμα. Επιστρέφει TRUE ή FALSE ως συμβολοσειρά (varchar).

GeometryRelate(Shape 1, Shape 2)

GeometryWithinDistance

GeometryWithinDistance(TRIP_START, TRIP_END, 500)

Καθορίζει εάν δύο σχήματα είναι μέσα σε μια καθορισμένη απόσταση το ένα από το άλλο. Επιστρέφει TRUE ή FALSE ως συμβολοσειρά (varchar).

GeometryWithinDistance(Shape1, Shape2, DistanceInFloat)

Συναρτήσεις συμβολοσειράς

Οι συναρτήσεις συμβολοσειράς εκτελούν διάφορες διαδικασίες χαρακτήρων. Λειτουργούν σε συμβολοσειρές χαρακτήρων.

Συνάρτηση Παράδειγμα Περιγραφή Σύνταξη

ASCII

ASCII('a')

Μετατρέπει μία συμβολοσειρά ενός χαρακτήρα στον αντίστοιχο κώδικα ASCII, μεταξύ 0 και 255. Εάν η έκφραση χαρακτήρων αποτιμάται σε πολλαπλούς χαρακτήρες, επιστρέφεται ο κώδικας ASCII που αντιστοιχεί στον πρώτο χαρακτήρα της έκφρασης.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων.

ASCII(expr)

BIT_LENGTH

BIT_LENGTH('abcdef')

Επιστρέφει το μήκος, σε bit, μιας συγκεκριμένης συμβολοσειράς. Κάθε χαρακτήρας Unicode έχει μήκος 2 byte (ισοδυναμεί με 16 bit).

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων.

BIT_LENGTH(expr)

CHAR

CHAR(35)

Μετατρέπει μια αριθμητική τιμή μεταξύ 0 και 255 στην τιμή χαρακτήρα που αντιστοιχεί στον κώδικα ASCII.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως αριθμητική τιμή μεταξύ 0 και 255.

CHAR(expr)

CHAR_LENGTH

CHAR_LENGTH(Customer_Name)

Επιστρέφει το μήκος, σε αριθμό χαρακτήρων, μιας συγκεκριμένης συμβολοσειράς. Τα κενά στην αρχή και στο τέλος δεν προσμετρώνται στο μήκος της συμβολοσειράς.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων.

CHAR_LENGTH(expr)

CONCAT

SELECT DISTINCT CONCAT ('abc', 'def') FROM employee

Συνενώνει δύο συμβολοσειρές χαρακτήρων.

exprs είναι παραστάσεις που υπολογίζονται ως συμβολοσειρές χαρακτήρων, διαχωρισμένες με κόμμα.

Πρέπει να χρησιμοποιείτε ανεπεξέργαστα και όχι μορφοποιημένα δεδομένα με το CONCAT.

CONCAT(expr1, expr2)

INSERT

SELECT INSERT('123456', 2, 3, 'abcd') FROM table

Εισάγει μια συγκεκριμένη συμβολοσειρά χαρακτήρων σε συγκεκριμένη θέση σε άλλη συμβολοσειρά χαρακτήρων.

expr1 είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων. Προσδιορίζει τη συμβολοσειρά χαρακτήρων στόχου.

integer1 είναι οποιοσδήποτε θετικός ακέραιος που αντιστοιχεί στον αριθμό χαρακτήρων από την αρχή της συμβολοσειράς προορισμού μέχρι το σημείο εισαγωγής της δεύτερης συμβολοσειράς.

integer2 είναι οποιοσδήποτε θετικός ακέραιος που αντιστοιχεί στον αριθμό χαρακτήρων στη συμβολοσειρά προορισμού που θα αντικατασταθούν από τη δεύτερη συμβολοσειρά.

expr2 είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων. Προσδιορίζει τη συμβολοσειρά χαρακτήρων που θα προστεθεί στη συμβολοσειρά προορισμού.

INSERT(expr1, integer1, integer2, expr2)

LEFT

SELECT LEFT('123456', 3) FROM table

Επιστρέφει έναν συγκεκριμένο αριθμό χαρακτήρων από τα αριστερά μιας συμβολοσειράς.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων

integer είναι οποιοσδήποτε θετικός ακέραιος που αντιστοιχεί στον αριθμό χαρακτήρων από τα αριστερά της συμβολοσειράς που θα επιστραφεί.

LEFT(expr, integer)

LENGTH

LENGTH(Customer_Name)

Επιστρέφει το μήκος, σε αριθμό χαρακτήρων, μιας συγκεκριμένης συμβολοσειράς. Το μήκος επιστρέφεται με την εξαίρεση κάθε κενού χαρακτήρα τέλους

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων.

LENGTH(expr)

LOCATE

LOCATE('d' 'abcdef')

Επιστρέφει την αριθμητική θέση μιας συμβολοσειράς χαρακτήρων σε άλλη συμβολοσειρά χαρακτήρων. Εάν η συμβολοσειρά χαρακτήρων δεν βρίσκεται στη συμβολοσειρά χαρακτήρων της αναζήτησης, η συνάρτηση επιστρέφει τιμή 0.

expr1 είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων. Προσδιορίζει τη συμβολοσειρά που αναζητείται.

expr2 είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων.

Προσδιορίζει τη συμβολοσειρά όπου εκτελείται η αναζήτηση.

LOCATE(expr1, expr2)

LOCATEN

LOCATEN('d' 'abcdef', 3)

Όπως και η συνάρτηση LOCATE, επιστρέφει την αριθμητική θέση μιας συμβολοσειράς χαρακτήρων σε μια άλλη συμβολοσειρά χαρακτήρων. Η συνάρτηση LOCATEN περιλαμβάνει ένα ακέραιο όρισμα που σας επιτρέπει να καθορίζετε μια θέση έναρξης για την αναζήτηση.

expr1 είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων. Προσδιορίζει τη συμβολοσειρά που αναζητείται.

expr2 είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων. Προσδιορίζει τη συμβολοσειρά όπου εκτελείται η αναζήτηση.

integer είναι οποιοσδήποτε θετικός ακέραιος (διάφορος του μηδενός) που αντιστοιχεί στην θέση έναρξης της αναζήτησης για τη συμβολοσειρά χαρακτήρων.

LOCATEN(expr1, expr2, integer)

LOWER

LOWER(Customer_Name)

Μετατρέπει μια συμβολοσειρά χαρακτήρων σε πεζούς χαρακτήρες.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων.

LOWER(expr)

OCTET_LENGTH

OCTET_LENGTH('abcdef')

Επιστρέφει τον αριθμό των byte μιας συγκεκριμένης συμβολοσειράς.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων.

OCTET_LENGTH(expr)

POSITION

POSITION('d', 'abcdef')

Επιστρέφει την αριθμητική θέση του strExpr1 σε μια έκφραση χαρακτήρων. Εάν δεν βρεθεί η συμβολοσειρά strExpr1, η συνάρτηση επιστρέφει τιμή 0.

expr1 είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων. Προσδιορίζει τη συμβολοσειρά προς αναζήτηση στη συμβολοσειρά προορισμού. Για παράδειγμα, "d".

expr2 είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων. Προσδιορίζει τη συμβολοσειρά προορισμού όπου εκτελείται η αναζήτηση. Για παράδειγμα, "abcdef".

POSITION(expr1, expr2)

REPEAT

REPEAT('abc', 4)

Επαναλαμβάνει μια καθορισμένη έκφραση n φορές.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων

integer είναι οποιοσδήποτε θετικός ακέραιος που αντιστοιχεί στον αριθμό των επαναλήψεων της συμβολοσειράς χαρακτήρων.

REPEAT(expr, integer)

REPLACE

REPLACE('abcd1234', '123', 'zz')

Αντικαθιστά έναν ή περισσότερους χαρακτήρες από συγκεκριμένη έκφραση χαρακτήρων με έναν ή περισσότερους χαρακτήρες.

expr1 είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων. Είναι η συμβολοσειρά στην οποία θα αντικατασταθούν οι χαρακτήρες.

expr2 είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων. Αυτή η δεύτερη συμβολοσειρά προσδιορίζει τους χαρακτήρες της πρώτης συμβολοσειράς που θα αντικατασταθούν.

expr3 είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων. Αυτή η τρίτη συμβολοσειρά προσδιορίζει τους χαρακτήρες που θα υποκατασταθούν στην πρώτη συμβολοσειρά.

REPLACE(expr1, expr2, expr3)

RIGHT

SELECT RIGHT('123456', 3) FROM table

Επιστρέφει έναν συγκεκριμένο αριθμό χαρακτήρων από τα δεξιά μιας συμβολοσειράς.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων.

integer είναι οποιοσδήποτε θετικός ακέραιος που αντιστοιχεί στον αριθμό χαρακτήρων από τα δεξιά της συμβολοσειράς που θα επιστραφεί.

RIGHT(expr, integer)

SPACE

SPACE(2)

Εισάγει κενά διαστήματα.

integer είναι οποιοσδήποτε θετικός ακέραιος που υποδεικνύει τον αριθμό των διαστημάτων για εισαγωγή.

SPACE(expr)

SUBSTRING

SUBSTRING('abcdef' FROM 2)

Δημιουργεί μια νέα συμβολοσειρά που ξεκινά από σταθερό αριθμό χαρακτήρων στην αρχική συμβολοσειρά.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων.

startPos είναι οποιοσδήποτε θετικός ακέραιος που αντιστοιχεί στον αριθμό χαρακτήρων από την αρχή του αριστερού άκρου της συμβολοσειράς όπου που θα ξεκινάει το αποτέλεσμα.

SUBSTRING([SourceString] FROM [StartPostition])

SUBSTRINGN

SUBSTRING('abcdef' FROM 2 FOR 3)

Όπως και η συνάρτηση SUBSTRING, δημιουργεί μια νέα συμβολοσειρά που ξεκινά από έναν σταθερό αριθμό χαρακτήρων στην αρχική συμβολοσειρά.

SUBSTRINGN περιλαμβάνει ένα ακέραιο όρισμα που σας επιτρέπει να καθορίζετε το μήκος της νέας συμβολοσειράς, σε αριθμούς χαρακτήρων.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων.

startPos είναι οποιοσδήποτε θετικός ακέραιος που αντιστοιχεί στον αριθμό χαρακτήρων από την αρχή του αριστερού άκρου της συμβολοσειράς όπου που θα ξεκινάει το αποτέλεσμα.

SUBSTRING(expr FROM startPos FOR length)

TrimBoth

Trim(BOTH '_' FROM '_abcdef_')

Αφαιρεί συγκεκριμένους χαρακτήρες αρχής και τέλους από μια συμβολοσειρά χαρακτήρων.

char είναι οποιοσδήποτε μεμονωμένος χαρακτήρας. Αν παραλείψετε αυτόν τον ορισμό (και τα απαιτούμενα μονά εισαγωγικά), χρησιμοποιείται από προεπιλογή ένας χαρακτήρας κενού.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων.

TRIM(BOTH char FROM expr)

TRIMLEADING

TRIM(LEADING '_' FROM '_abcdef')

Αφαιρεί συγκεκριμένους χαρακτήρες αρχής από μια συμβολοσειρά χαρακτήρων.

char είναι οποιοσδήποτε μεμονωμένος χαρακτήρας. Αν παραλείψετε αυτόν τον ορισμό (και τα απαιτούμενα μονά εισαγωγικά), χρησιμοποιείται από προεπιλογή ένας χαρακτήρας κενού.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων.

TRIM(LEADING char FROM expr)

TRIMTRAILING

TRIM(TRAILING '_' FROM 'abcdef_')

Αφαιρεί συγκεκριμένους χαρακτήρες τέλους από μια συμβολοσειρά χαρακτήρων.

char είναι οποιοσδήποτε μεμονωμένος χαρακτήρας. Αν παραλείψετε αυτόν τον ορισμό (και τα απαιτούμενα μονά εισαγωγικά), χρησιμοποιείται από προεπιλογή ένας χαρακτήρας κενού.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων.

TRIM(TRAILING char FROM expr)

UPPER

UPPER(Customer_Name)

Μετατρέπει μια συμβολοσειρά χαρακτήρων σε κεφαλαίους χαρακτήρες.

expr είναι οποιαδήποτε παράσταση υπολογίζεται ως συμβολοσειρά χαρακτήρων.

UPPER(expr)

Συμβουλές για τη χρήση των συναρτήσεων συμβολοσειράς

Ακολουθούν μερικές συμβουλές για καλύτερα αποτελέσματα όταν χρησιμοποιείτε συναρτήσεις συμβολοσειράς στα βιβλία εργασίας σας.

Συνένωση πολλαπλών τιμών:

Χρησιμοποιήστε τη συνάρτηση LISTAGG για τη συνένωση πολλαπλών τιμών σε ένα κελί ή μία σειρά.

listagg(<column to concatenate> by <grouping column>)

Αν η συμβολοσειρά που προκύπτει έχει πολύ μεγάλο μήκος, προσθέστε το στοιχείο on overflow truncate. Αν οι τιμές δεν είναι μοναδικές, προσθέστε το στοιχείο distinct.

Για παράδειγμα:

listagg(distinct City_ID by STATE on overflow truncate)

Συναρτήσεις συστήματος

Η συνάρτηση συστήματος USER επιστρέφει τιμές που σχετίζονται με την περίοδο λειτουργίας. Για παράδειγμα, το όνομα χρήστη με το οποίο συνδεθήκατε.

Συνάρτηση Παράδειγμα Περιγραφή Σύνταξη

DATABASE

 

Επιστρέφει το όνομα της περιοχής θέματος στην οποία είστε συνδεδεμένοι.

DATABASE()

USER

 

Επιστρέφει το όνομα χρήστη για το σημασιολογικό μοντέλο στο οποίο είστε συνδεδεμένοι.

USER()

Συναρτήσεις χρονικής σειράς

Οι συναρτήσεις χρονικής σειράς σάς παρέχουν τη δυνατότητα συνάθροισης και πρόβλεψης δεδομένων με βάση τις διαστάσεις του χρόνου. Για παράδειγμα, μπορείτε να χρησιμοποιήσετε τη συνάρτηση AGO για να υπολογίσετε τα έσοδα από ένα έτος πριν.

Τα μέλη της διάστασης χρόνου πρέπει να βρίσκονται στο επίπεδο της συνάρτησης ή κάτω από αυτό. Έτσι, μία ή περισσότερες στήλες που προσδιορίζουν μονοσήμαντα μέλη στο δεδομένο επίπεδο ή κάτω από αυτό, πρέπει να προβάλλονται στο ερώτημα.

Συνάρτηση Παράδειγμα Περιγραφή Σύνταξη

AGO

SELECT Year_ID, AGO(sales, year, 1)

Υπολογίζει τη συναθροιστική τιμή μιας μέτρησης σε μια καθορισμένη χρονική περίοδο στο παρελθόν. Για παράδειγμα, για να υπολογίσετε τα μηνιαία έσοδα πριν από ένα έτος, χρησιμοποιήστε AGO(Revenue, Year, 1, SHIP_MONTH). Για να υπολογίσετε τα τριμηνιαία έσοδα το τελευταίο τρίμηνο, χρησιμοποιήστε AGO(Revenue, Quarter, 1).

AGO(MEASURE, TIME_LEVEL, OFFSET)

Όπου:

  • MEASURE - Αντιπροσωπεύει το μέτρο για υπολογισμό (π.χ. έσοδα).
  • TIME_LEVEL - Αντιπροσωπεύει το χρονικό διάστημα, το οποίο πρέπει να είναι Έτος, Τρίμηνο, Μήνας, Εβδομάδα ή Ημέρα.
  • OFFSET - Αντιπροσωπεύει τον αριθμό των χρονικών διαστημάτων για τον υπολογισμό προς τα πίσω (π.χ. 1 για ένα έτος).

PERIODROLLING

SELECT Month_ID, PERIODROLLING (monthly_sales, -1, 1)

Υπολογίζει τη συγκεντρωτική τιμή ενός μέτρου για μια χρονική περίοδο που ξεκινά x μονάδες χρόνου και τελειώνει y μονάδες χρόνου από το τρέχον χρονικό σημείο. Για παράδειγμα, η συνάρτηση PERIODROLLING μπορεί να υπολογίσει τις πωλήσεις για μια χρονική περίοδο που ξεκινά ένα τρίμηνο πριν και τελειώνει ένα τρίμηνο μετά από το τρέχον τρίμηνο.

PERIODROLLING(measure, x [,y])

Όπου:

  • MEASURE - Αντιπροσωπεύει το όνομα μιας στήλης μέτρου.
  • X - Είναι ένας ακέραιος αριθμός που αντιπροσωπεύει την απόκλιση από την τρέχουσα ώρα.
  • Y - Είναι ένας ακέραιος αριθμός που αντιπροσωπεύει τον αριθμό των μονάδων χρόνου για τον υπολογισμό της συνάρτησης.
  • HIERARCHY - Είναι ένα προαιρετικό όρισμα που αντιπροσωπεύει το όνομα μιας ιεραρχίας σε μια διάσταση χρόνου, όπως YR, MON, DAY, την οποία θέλετε να χρησιμοποιήσετε για τον υπολογισμό του χρονικού διαστήματος.

TODATE

SELECT Year_ID, Month_ID, TODATE (sales, year)

Υπολογίζει τη συναθροιστική τιμή μιας μέτρησης από την έναρξη μιας χρονικής περιόδου έως την πιο πρόσφατη χρονική περίοδο, για παράδειγμα οι υπολογισμοί εξ αρχής έτους έως σήμερα.

Για παράδειγμα, για να υπολογίσετε τις πωλήσεις εξ αρχής έτους έως σήμερα, χρησιμοποιήστε TODATE(sales, year).

TODATE(MEASURE, TIME_LEVEL)

Όπου:

  • MEASURE - Αντιπροσωπεύει μια έκφραση που παραπέμπει τουλάχιστον σε μία στήλη μέτρου (π.χ. πωλήσεις).
  • TIME_LEVEL - Αντιπροσωπεύει το χρονικό διάστημα, το οποίο πρέπει να είναι Έτος, Τρίμηνο, Μήνας, Εβδομάδα ή Ημέρα.