Wenden Sie eine Maske an, um eine Zeichenfolge in SQL Server Query / View zu formatieren

8

Gibt es eine gute Möglichkeit, eine Maske auf eine Zeichenfolge in einer SQL Server-Abfrage anzuwenden?

Ich habe zwei Tabellen, eine mit Telefonnummer, die als varchar ohne Literale 0155567890 gespeichert ist, und einen Telefontyp, der eine Maske für diesen Telefonnummertyp hat: (##) #### ####

Wie gebe ich am besten eine Zeichenfolge (für ein Zusammenführungsdokument) zurück, damit die Abfrage die vollständig formatierte Telefonnummer zurückgibt:

%Vor%     
Molloch 23.08.2010, 09:52
quelle

4 Antworten

7

Ich brauchte das auch, und dank Sjuuls Pseudocode konnte ich eine Funktion dafür erstellen.

%Vor%     
Jeff S. 17.02.2011, 20:22
quelle
2

Genau das ist in meinem Kopf entstanden. Ich weiß nicht, ob es die beste Lösung ist, aber ich denke, es sollte praktikabel sein.

Erstellen Sie eine Funktion mit dem Namen applyMask (orso)

Pseudocode:

%Vor%     
Sjuul Janssen 23.08.2010 10:03
quelle
2

Nur für den Fall, dass jemand jemals eine Tabellenfunktion benötigt.

Ansatz 1

%Vor%

Wenden Sie es dann als

an %Vor%

Ansatz 2

Lassen Sie uns einen für die Geschichte verlassen. Unter einem ist mehr performant.

%Vor%     
i-one 15.08.2013 00:45
quelle
0

Wenn Sie "maskieren" müssen, den realen Wert lieber durch einen anderen ausblenden und dann eine Zeichenkette "demaskieren", können Sie diese Funktion ausprobieren oder sie erweitern. :)

Ссылка

    
Goran B. 04.06.2015 21:13
quelle

Tags und Links