IF
Ισχύει για:Υπολογιζόμενη στήληΥπολογιζόμενος πίνακαςΜέτρηση υπολογισμού απεικόνισης
Ελέγχει μια συνθήκη και επιστρέφει μία τιμή όταν είναι TRUE
, διαφορετικά επιστρέφει μια δεύτερη τιμή.
Σύνταξη
IF(<logical_test>, <value_if_true>[, <value_if_false>])
Παραμέτρους
Όρος | Ορισμός |
---|---|
logical_test |
Οποιαδήποτε τιμή ή παράσταση που μπορεί να αξιολογηθεί σε TRUE ή FALSE . |
value_if_true |
Η τιμή που επιστρέφεται εάν ο λογικός έλεγχος είναι TRUE . |
value_if_false |
(Προαιρετικό) Η τιμή που επιστρέφεται εάν ο λογικός έλεγχος είναι FALSE . Εάν παραλειφθεί, επιστρέφεται BLANK. |
Τιμή επιστροφής
Είτε value_if_true
, value_if_false
, είτε BLANK
.
Παρατηρήσεις
Η συνάρτηση IF μπορεί να επιστρέψει έναν τύπο δεδομένων μεταβλητής εάν οι
value_if_true
καιvalue_if_false
έχουν διαφορετικούς τύπους δεδομένων, αλλά η συνάρτηση επιχειρεί να επιστρέψει έναν μόνο τύπο δεδομένων εάν τόσο οιvalue_if_true
όσο και οιvalue_if_false
έχουν αριθμητικούς τύπους δεδομένων. Στη δεύτερη περίπτωση, η συνάρτηση IF θα μετατρέψει έμμεσα τους τύπους δεδομένων για να προσαρμόσει και τις δύο τιμές.Για παράδειγμα, ο τύπος
IF(<condition>, TRUE(), 0)
επιστρέφειTRUE
ή 0, αλλά ο τύποςIF(<condition>, 1.0, 0)
επιστρέφει μόνο δεκαδικές τιμές, παρόλο πουvalue_if_false
είναι τύπου δεδομένων ακέραιου αριθμού. Για να μάθετε περισσότερα σχετικά με την έμμεση μετατροπή τύπων δεδομένων, ανατρέξτε στο θέμα Τύποι δεδομένων.Για να εκτελέσετε τις παραστάσεις διακλάδωσης, ανεξάρτητα από την παράσταση συνθήκης, χρησιμοποιήστε IF.EAGER αντί για αυτό.
Παραδείγματα
Οι ακόλουθοι ορισμοί υπολογιζόμενων στηλών του πίνακα Product χρησιμοποιούν τη συνάρτηση IF με διαφορετικούς τρόπους για την ταξινόμηση κάθε προϊόντος με βάση την τιμή τιμοκαταλόγου του.
Το πρώτο παράδειγμα ελέγχει εάν η τιμή List Price τιμή στήλης είναι μικρότερη από 500. Όταν αυτή η συνθήκη είναι true, επιστρέφεται η τιμή Low. Επειδή δεν υπάρχει value_if_false
τιμή, επιστρέφεται BLANK.
Παραδείγματα σε αυτό το άρθρο μπορούν να χρησιμοποιηθούν με το δείγμα μοντέλου Adventure Works DW 2020 Power BI Desktop. Για να λάβετε το μοντέλο, ανατρέξτε DAX δείγμαμοντέλου .
Price Group =
IF(
'Product'[List Price] < 500,
"Low"
)
Το δεύτερο παράδειγμα χρησιμοποιεί την ίδια δοκιμή, αλλά αυτή τη φορά περιλαμβάνει μια value_if_false
τιμή. Επομένως, ο τύπος ταξινομεί κάθε προϊόν είτε ως Low
, είτε ως High
.
Price Group =
IF(
'Product'[List Price] < 500,
"Low",
"High"
)
Το τρίτο παράδειγμα χρησιμοποιεί την ίδια δοκιμή, αλλά αυτή τη φορά κάνει ένθεση μιας συνάρτησης IF για την εκτέλεση μιας πρόσθετης δοκιμής. Επομένως, ο τύπος ταξινομεί κάθε προϊόν είτε ως Low
, Medium
ή High
.
Price Group =
IF(
'Product'[List Price] < 500,
"Low",
IF(
'Product'[List Price] < 1500,
"Medium",
"High"
)
)
Φιλοδώρημα
Όταν χρειάζεται να κάνετε ένθεση πολλών συναρτήσεων IF, η συνάρτηση SWITCH μπορεί να είναι μια καλύτερη επιλογή. Αυτή η συνάρτηση παρέχει έναν πιο κομψό τρόπο σύνταξης μιας παράστασης που επιστρέφει περισσότερες από δύο πιθανές τιμές.