Heim >Datenbank >MySQL-Tutorial >Wie fülle ich Zahlen in SQL Server-Abfragen mit führenden Nullen auf?

Wie fülle ich Zahlen in SQL Server-Abfragen mit führenden Nullen auf?

Patricia Arquette
Patricia ArquetteOriginal
2025-01-10 20:47:48366Durchsuche

How to Pad Numbers with Leading Zeros in SQL Server Queries?

SQL Server: Führende Nullen zu Zahlen hinzufügen

Ihre alte SQL Server 2000-Datenbank char(6) wurde für Mitarbeiterausweisnummern verwendet und gewährleistet so ein konsistentes Format mit führenden Nullen. Ihre neue Webanwendung speichert diese jedoch zur Verbesserung der Effizienz als Ganzzahlen. Dies stellt beim Abfragen der Daten eine Formatierungsherausforderung dar.

So formatieren Sie Ganzzahlen mit führenden Nullen in Ihren SQL-Abfragen:

Lösung mit REPLICATE:

Die Funktion REPLICATE bietet eine elegante Lösung:

<code class="language-sql">SELECT REPLICATE('0', 6 - LEN(employeeId)) + employeeId
FROM dbo.RequestItems
WHERE ID = 0;</code>

Passen Sie die „6“ in REPLICATE an, um die Gesamtlänge der gepolsterten Saite zu steuern. In diesem Beispiel wird eine Länge von sechs Zeichen beibehalten.

Zum Beispiel gibt ein employeeId von 7135 „007135“ zurück.

Umgang mit INT-Spalten:

Wenn employeeId eine INT-Spalte ist, verwenden Sie RTRIM für die implizite Konvertierung in VARCHAR:

<code class="language-sql">SELECT REPLICATE('0', 6 - LEN(RTRIM(employeeId))) + RTRIM(employeeId)
FROM dbo.RequestItems
WHERE ID = 0;</code>

Führende Nullen entfernen:

Um die ursprüngliche Zahl (ohne führende Nullen) abzurufen, verwenden Sie die Funktionen RIGHT und PATINDEX:

<code class="language-sql">SELECT RIGHT(employeeId, (LEN(employeeId) - PATINDEX('%[^0]%', employeeId)) + 1)
FROM dbo.RequestItems
WHERE ID = 0;</code>

Dieser Ansatz bietet eine robuste Lösung für die Verwaltung führender Nullen sowohl in Ihrem C#-Code als auch in SQL Server-Abfragen und stellt so die Datenkonsistenz in Ihrer gesamten Anwendung sicher.

Das obige ist der detaillierte Inhalt vonWie fülle ich Zahlen in SQL Server-Abfragen mit führenden Nullen auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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