Heim > Datenbank > MySQL-Tutorial > Hauptteil

Detaillierte Erläuterung der iif-Anweisung in SQL

黄舟
Freigeben: 2017-02-20 11:50:24
Original
4252 Leute haben es durchsucht

[Einführung] IIf gibt einen von zwei numerischen oder Zeichenfolgenwerten zurück, die durch einen logischen Test ermittelt werden. Syntax NumericIIf(«Logischer Ausdruck», «Numerischer Ausdruck1», «Numerischer Ausdruck2») If «Logica

IIf
gibt einen von zwei numerischen oder Zeichenfolgenwerten zurück, die durch einen logischen Test ermittelt wurden eins.

Syntax
Zahl

IIf(«Logical Expression», «Numeric Expression1», «Numeric Expression2»)
Nach dem Login kopieren

Wenn „Logischer Ausdruck“ TRUE ist, gibt diese Funktion „Numerischer Ausdruck1“ zurück, andernfalls „Numerischer Ausdruck2“.

String

IIf(«Logical Expression», «String Expression1», «String Expression2»)
Nach dem Login kopieren

Wenn „Logical Expression“ TRUE ergibt, gibt diese Funktion „String Expression1“ zurück, andernfalls „String Expression2“.

Hinweise
Der Ausdruck gilt nur dann als FALSCH, wenn der Wert von „Logischer Ausdruck“ Null ist. Jeder andere Wert wird als TRUE interpretiert.
Es wird nicht empfohlen, die Iif-Funktion zum Erstellen einer Sammlung von Mitgliedern basierend auf Suchbedingungen zu verwenden. Verwenden Sie stattdessen die Filterfunktion, um jedes Mitglied der angegebenen Sammlung anhand eines logischen Ausdrucks auszuwerten und eine Untersammlung der Mitglieder zurückzugeben.

Beispiel
Zahl
Das folgende Beispiel gibt 0 zurück, wenn Measures.CurrentMember eine leere Zelle ist, andernfalls 1:

IIf(IsEmpty(Measures.CurrentMember), 0, 1)
Nach dem Login kopieren

String
Wenn Measures. CurrentMember ist eine leere Zelle, die folgende Zeichenfolge gibt die Zeichenfolge „Ja“ zurück, andernfalls wird die Zeichenfolge „Nein“ zurückgegeben:
IIf(IsEmpty(Measures.CurrentMember), „Yes“, „No“)

In Access kann ich die IIF-Funktion für eine statistische Zusammenfassung verwenden, um beispielsweise die Anzahl der Benutzer zu ermitteln, die tatsächlich zahlen sollten:



Wählen Sie sum(iif(amount > ;0, 1,0)) als Zahl aus Gebühr
scheint keine entsprechende Funktion in SQL Server zu haben. Ich verwende:
select sum(case when amount>0 then 1 else 0 end) as num from The cost
scheint nicht sehr intuitiv zu sein, ich frage mich, ob es andere Methoden gibt

Fall, wenn .... dann sonst Ende
Beispiel:

select id,case when bz='1' then xx when bz='2' then yy else zz end as tt from xxx
Nach dem Login kopieren

Was ist mit MITTE, LINKS, usw. ? Wie verwende ich es in SQL?
MID ist Teilzeichenfolge in SQL
LEFT ist LEFT in SQL
Zum Beispiel Teilzeichenfolge (Feld, Startposition, Dauer)
links (Feld, Dauer)

SUBSTRING (Ausdruck, Anfang, Länge)
Parameter
Ausdruck
ist eine Zeichenfolge, eine binäre Zeichenfolge, ein Text, ein Bild, eine Spalte oder ein Ausdruck, der Spalten enthält. Verwenden Sie keine Ausdrücke, die Aggregatfunktionen enthalten.

start
ist eine Ganzzahl, die die Startposition der Teilzeichenfolge angibt.

length
ist eine Ganzzahl, die die Länge der Teilzeichenfolge angibt (Anzahl der zurückzugebenden Zeichen oder Bytes).


LEFT
Gibt die angegebene Anzahl von Zeichen beginnend auf der linken Seite der Zeichenfolge zurück.

Syntax

LEFT ( character_expression , integer_expression )
Nach dem Login kopieren



Parameter
character_expression

Zeichen- oder Binärdatenausdruck. charakterausdruck kann eine Konstante, eine Variable oder eine Spalte sein. „character_expression“ muss einen Datentyp haben, der implizit in varchar konvertierbar ist. Andernfalls verwenden Sie die CAST-Funktion, um „character_expression“ explizit zu konvertieren.

integer_expression
ist eine positive ganze Zahl. Wenn integer_expression negativ ist, wird eine leere Zeichenfolge zurückgegeben.

Rückgabetyp
varchar

Das Obige ist die detaillierte Erklärung der iif-Anweisung in SQL. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www. php.cn)!


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!