SQL Server COALESCE()函数的创新应用
COALESCE()函数可以接受一系列的值,如果列表中所有项都为空(null),那么只使用一个值。然后,它将返回第一个非空值。这一技巧描述了创造性使用SQL Server 中COALESCE()函数的两种方法。 这里有一个简单的例子:有一个Persons数据表,它有三个字段FirstNam
COALESCE()函数可以接受一系列的值,如果列表中所有项都为空(null),那么只使用一个值。然后,它将返回第一个非空值。这一技巧描述了创造性使用SQL Server 中COALESCE()函数的两种方法。
这里有一个简单的例子:有一个Persons数据表,它有三个字段FirstName、MiddleName和LastName。表中包含以下值:
John A. MacDonald
Franklin D. Roosevelt
Madonna
Cher
Mary Weilage
如果你想用一个字符串列出他们的全名,下面给出了如何使用COALESCE()函数完成此功能:
SELECT FirstName + '' '' +COALESCE(MiddleName,'''')+ '' '' +COALESCE(LastName,'''')
如果你不想每个查询都这样写,列表A显示了如何将它转换成一个函数。这样当你需要使用这个脚本的时候(不管每个列的实际值是什么),可以直接调用该函数并传递三个字段参数。在下面的例子中,我传递给函数的参数是人名,但是你可以用字段名替代得到同样的结果:
SELECT dbo.WholeName(''James'',NULL,''Bond'')
UNION
SELECT dbo.WholeName(''Cher'',NULL,NULL)
UNION
SELECT dbo.WholeName(''John'',''F.'',''Kennedy'')
测试结果如下:
James Bond
Cher
John F. Kennedy
你可能会注意到我们的一个问题,在James Bond这个名字中有两个空格。通过修改@result这一行可以改正这个问题,如下所示:
SELECT @Result = LTRIM(@first + '' '' + COALESCE(@middle,'''') + '' '') + COALESCE(@last,'''')
下面是COALESCE()函数的另一个应用。在本例中,我们将显示一个支付给员工的工资单。问题是对于不同的员工工资标准是不同的(例如,有些员工是按小时支付,按工作量每周发一次工资或是按责任支付)。列表B中是创建一个样表的代码。下面是一些示例记录,每个是一种类型:
1 18.00 40 NULL NULL NULL NULL
2 NULL NULL 4.00 400 NULL NULL
3 NULL NULL NULL NULL 800.00 NULL
4 NULL NULL NULL NULL 500.00 600
用下面的代码在同一列中列出支付给员工的总额(不管它们的支付标准):
SELECT
EmployeeID,
COALESCE(HourlyWage * HoursPerWeek,0)+
COALESCE(AmountPerPiece * PiecesThisWeek,0)+
COALESCE(WeeklySalary + CommissionThisWeek,0)AS Payment
FROM [Coalesce_Demo].[PayDay]
结果如下:
EmployeeID Payment
1 720.00
2 1600.00
3 800.00
4 1100.00
你可能需要在应用程序中多处使用这一计算方法,虽然这种表示可以完成任务,但是看起来不是很美观。下面列出了如何使用一个单独的求和列来完成这项工作:
ALTERTABLE Coalesce_Demo.PayDay
ADD Payment AS
COALESCE(HourlyWage * HoursPerWeek,0)+
COALESCE(AmountPerPiece * PiecesThisWeek,0)+
COALESCE(WeeklySalary + CommissionThisWeek,0)
这样只要使用SELECT *就可以显示预先计算好的结果。
小结
本文介绍了使用COALESCE()函数一些特殊场合和特殊方式。就我的经验看来,COALESCE()函数最常出现在一个具体的内容中,如一个查询或视图或存储过程中。
你可以将COALESCE()放在一个函数中来使用它,也可以通过将它放在一个单独的计算列中优化性能,并总能获得结果

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Die Go-Sprache bietet zwei Technologien zur dynamischen Funktionserstellung: Schließung und Reflexion. Abschlüsse ermöglichen den Zugriff auf Variablen innerhalb des Abschlussbereichs, und durch Reflektion können mithilfe der FuncOf-Funktion neue Funktionen erstellt werden. Diese Technologien sind nützlich bei der Anpassung von HTTP-Routern, der Implementierung hochgradig anpassbarer Systeme und dem Aufbau steckbarer Komponenten.

1. Die SUMME-Funktion wird verwendet, um die Zahlen in einer Spalte oder einer Gruppe von Zellen zu summieren, zum Beispiel: =SUMME(A1:J10). 2. Die Funktion AVERAGE wird verwendet, um den Durchschnitt der Zahlen in einer Spalte oder einer Gruppe von Zellen zu berechnen, zum Beispiel: =AVERAGE(A1:A10). 3. COUNT-Funktion, die verwendet wird, um die Anzahl der Zahlen oder Texte in einer Spalte oder einer Gruppe von Zellen zu zählen, zum Beispiel: =COUNT(A1:A10) 4. IF-Funktion, die verwendet wird, um logische Urteile auf der Grundlage spezifizierter Bedingungen zu treffen und die zurückzugeben entsprechendes Ergebnis.

Die Ausnahmebehandlung in C++ kann durch benutzerdefinierte Ausnahmeklassen verbessert werden, die spezifische Fehlermeldungen und Kontextinformationen bereitstellen und benutzerdefinierte Aktionen basierend auf dem Fehlertyp ausführen. Definieren Sie eine von std::Exception geerbte Ausnahmeklasse, um spezifische Fehlerinformationen bereitzustellen. Verwenden Sie das Schlüsselwort throw, um eine benutzerdefinierte Ausnahme auszulösen. Verwenden Sie „dynamic_cast“ in einem Try-Catch-Block, um die abgefangene Ausnahme in einen benutzerdefinierten Ausnahmetyp zu konvertieren. Im tatsächlichen Fall löst die Funktion open_file eine FileNotFoundException-Ausnahme aus. Das Abfangen und Behandeln der Ausnahme kann eine spezifischere Fehlermeldung liefern.

Beim Übergeben einer Karte an eine Funktion in Go wird standardmäßig eine Kopie erstellt und Änderungen an der Kopie haben keinen Einfluss auf die Originalkarte. Wenn Sie die Originalkarte ändern müssen, können Sie sie über einen Zeiger übergeben. Leere Karten müssen mit Vorsicht behandelt werden, da es sich technisch gesehen um Nullzeiger handelt und die Übergabe einer leeren Karte an eine Funktion, die eine nicht leere Karte erwartet, einen Fehler verursacht.

Für die Interaktion mit JSON-Daten über SQL in Golang gibt es die folgenden Schritte: Verwenden Sie die Funktion json.Unmarshal, um JSON-Daten in eine Go-Struktur zu analysieren und JSON in eine Struktur zu konvertieren. Verwenden Sie das Paket „database/sql“, um auf SQL-Datenbanken zuzugreifen und diese zu betreiben sowie Vorgänge wie Einfügungen und Abfragen auszuführen. Durch die Kombination der oben genannten Schritte können Sie in Go eine auf SQL und JSON basierende Anwendung erstellen, um Funktionen wie Benutzerregistrierung und Anmeldung zu implementieren.

Sie können Ihr Lieblingsbuch in der Bücher-App nicht lesen? Wie bei anderen nativen Apps auf iOS können auch bei der Bücher-App einige Probleme auftreten. Wenn die Bücher-App nicht ordnungsgemäß funktioniert, sollten Sie zunächst das Schließen der Bücher-App erzwingen. Wenn diese einfache Methode die Anwendung nicht löst, sollte das Problem durch Befolgen der verbleibenden Schritte behoben werden. Fix 1 – Schließen der Bücher-App erzwingen Erzwingen Sie das Schließen der Bücher-App-Instanz vom iPhone. Schritt 1 – Öffnen Sie die Bücher-App. Wenn es nicht zutrifft oder ständig abstürzt, ignorieren Sie es. Schritt 2 – Wischen Sie als Nächstes bei geöffneter Bücher-App-Instanz von der unteren linken Ecke Ihres Telefons. Schritt 3 – Dort können Sie alle offenen Bewerbungen einsehen. Wischen Sie nach oben, um sie jeweils auszuschalten

In der Go-Sprache spielen Funktionen eine Schlüsselrolle in der objektorientierten Programmierung: Kapselung: Kapselung des Verhaltens und Bedienung von Objekten. Operationen: Führen Sie Operationen an Objekten durch, z. B. das Ändern von Feldwerten oder das Ausführen von Aufgaben.

Funktionen und Methoden sind zwei verschiedene Konzepte in der Go-Sprache. Empfänger: Funktionen haben keine Empfänger, Methoden hingegen Empfänger. Aufrufbarkeit: Funktionen können nur über den Typnamen aufgerufen werden, während Methoden über den Typ- oder Variablennamen aufgerufen werden können. Zugriffskontrolle: Funktionen können nur auf Parameter und globale Variablen zugreifen, während Methoden auf private Felder des Empfängers zugreifen können.
