Heim > Datenbank > MySQL-Tutorial > Wie kann ich Zahlen aus alphanumerischen Zeichenfolgen in SQL extrahieren?

Wie kann ich Zahlen aus alphanumerischen Zeichenfolgen in SQL extrahieren?

Linda Hamilton
Freigeben: 2025-01-21 01:51:08
Original
499 Leute haben es durchsucht

How Can I Extract Numbers from Alphanumeric Strings in SQL?

Zahlen aus alphanumerischer Zeichenfolge in SQL extrahieren

Frage:

Sie haben einige Zeichenfolgen, die alphanumerische Zeichen enthalten, und Sie müssen nur die numerischen Werte extrahieren. Zum Beispiel mit der folgenden Zeichenfolge:

  • 003Vorläufiger Prüfungsplan
  • Koordination005
  • Bilanz 1000 Blatt

Sie möchten suchen nach:

  • 003
  • 005
  • 1000

Lösung:

Um Zahlen aus einer Zeichenfolge mithilfe von SQL zu extrahieren, können Sie benutzerdefinierte Funktionen (UDFs) verwenden. Erstellen Sie die folgende UDF:

<code class="language-sql">CREATE FUNCTION dbo.udf_GetNumeric
(
  @strAlphaNumeric VARCHAR(256)
)
RETURNS VARCHAR(256)
AS
BEGIN
  DECLARE @intAlpha INT
  SET @intAlpha = PATINDEX('%[^0-9]%', @strAlphaNumeric)
  BEGIN
    WHILE @intAlpha > 0
    BEGIN
      SET @strAlphaNumeric = STUFF(@strAlphaNumeric, @intAlpha, 1, '' )
      SET @intAlpha = PATINDEX('%[^0-9]%', @strAlphaNumeric )
    END
  END
  RETURN ISNULL(TRIM(@strAlphaNumeric), '0')
END
GO</code>
Nach dem Login kopieren

Verwendung:

Nachdem Sie die UDF erstellt haben, können Sie damit Zahlen aus einer Zeichenfolge extrahieren:

<code class="language-sql">SELECT dbo.udf_GetNumeric(column_name)
FROM table_name</code>
Nach dem Login kopieren

Zum Beispiel:

<code class="language-sql">SELECT dbo.udf_GetNumeric('003Preliminary Examination Plan')</code>
Nach dem Login kopieren

Referenz:

Hinweis:

Diese Lösung gibt Zahlen als Zeichenfolgen aus. Wenn Sie Ganzzahlen benötigen, können Sie diese mit der Funktion CAST() umwandeln. Der obige Code wurde vereinfacht, um unnötig komplexe Logik zu vermeiden und sicherzustellen, dass die Funktion immer einen Wert zurückgibt.

Das obige ist der detaillierte Inhalt vonWie kann ich Zahlen aus alphanumerischen Zeichenfolgen in SQL extrahieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage