Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

SQL - Telefonnummer optimieren

Frage Entwicklung

Mitglied: xister

xister (Level 1) - Jetzt verbinden

13.10.2010 um 10:15 Uhr, 5612 Aufrufe, 6 Kommentare

Hallo zusammen,

ich habe ein kleines Problem und hoffe ihr könnt mir weiterhelfen, da ich in SQL nicht so bewandert bin.

Problem:
Ich habe eine SQL Datenbank mit einigen Telefonnummern, diese wird auch ständig mit neuen Telefonnummern gefüttert, allerdings befinden sich unter den Telefonnummern immer wieder fehlerhafte Nummern.

- keine vorangestellte 0
- Buchstaben in Telefonnummer
- Bindestriche in Telefonnummer

Wäre es möglich, diese Fälle per Update Befehl irgendwie zu aktualisieren.

Fall 1.:
Wenn keine vorangestellte 0, dann setze eine 0 vor die Nummer.

Fall 2:
Wenn Buchstaben in Telefonnummer, dann leere das Feld komplett

Fall 3:
Wenn Bindestrich in Telefonnummer, dann lösche diesen.

So ein Befehl wäre echt klasse.


Beste Grüße
xister
Mitglied: Biber
13.10.2010 um 10:31 Uhr
Moin xister,

  • hast du denn eine konkrete Datenbankversion oder möchstest du es eher abstrakt auf der Ebene "eine SQL-Datenbank" beantwortet haben?
  • hast du denn keine Applikation zwischen den Tabellenfeldern und den DAUs, die sich um derlei lästigen Unsinn bei der Erfassung/Anzeige kümmern könnte?

Grüße
Biber
Bitte warten ..
Mitglied: xister
13.10.2010 um 10:37 Uhr
Hallo Biber,

sorry, habe ich doch glatt vergessen zu erwähnen.

Es handelt sich um eine MS sqlexpress Datenbank (SQLServer 2008 R2).
Die Applikation ist eine Call-Center Software die allerdings automatisch mit den Daten des Auftraggebers gefüttert wird, somit also schnell fehlerhafte Daten ins System gespielt werden, wenn diese fehlerhaft eingetragen wurden.

Achja, bei den Feldern kann man diese wie folgt nennen:
Telefon1, Telefon2, Telefon3

Also es gibt insgesamt mehrere Felder für Telefonnummern, aber das lässt sich ja anschließend dann beliebig erweitern.

Verdammt ärgerlich, denn die Software zum antelefonieren kann natürlich mit solchen Nummern ohne vorangestellte 0 herzlich wenig anfangen und wählt somit Nummern aus dem Ortsnetz an

Ich hoffe ich konnte deine Fragen beantworten

Grüße
Bitte warten ..
Mitglied: maretz
13.10.2010 um 10:58 Uhr
naja - hast du mal z.B. bei SQL nach "Replace" geguckt? Das wär ja schonmal ne maßnahme...

und ggf. geht auch sowas

update xyz set telefon = concat(0,telefon) where telefon NOT LIKE "0%";

Damit wäre dann nur noch das mit den Buchstaben nen Problem... Da wäre zu überlegen zu gucken wieviele Einträge das überhaupt betrifft - ob sich da nen Programm für lohnt oder nicht...
Bitte warten ..
Mitglied: xister
13.10.2010 um 14:38 Uhr
Leider funktioniert die concat Funktion nicht unter dem SQL Server.
Bitte warten ..
Mitglied: soReal
05.09.2012 um 19:20 Uhr
Fall 1.:
Wenn keine vorangestellte 0, dann setze eine 0 vor die Nummer.

update [YourTable]
set telefon1 = '0' + telefon1
where telefon1 not like '0%'

Fall 2:
Wenn Buchstaben in Telefonnummer, dann leere das Feld komplett


update [YourTable]
set telefon1 = ''
where telefon1 like '%[a-z][A-Z]%'


Fall 3:
Wenn Bindestrich in Telefonnummer, dann lösche diesen.

update [YourTable]
set telefon1 = replace(telefon1,'-','')
where telefon1 like '%-%'
Bitte warten ..
Mitglied: Biber
06.09.2012 um 21:53 Uhr
Moin soReal,

kann sein, dass xister nicht mehr mitliest oder nach nunmehr 2 Jahren schon einen anderen Weg gefunden hat.

Aber ich denke, dieser Beitrag ist mit deiner Antwort auf jeden Fall "gelöst".

So habe ihn auch eben markiert.

Danke
Biber
Bitte warten ..
Neuester Wissensbeitrag
Exchange Server

WSUS bietet CU22 für Exchange 2007 SP3 nicht an. EOL Exchange 2007

Tipp von DerWoWusste zum Thema Exchange Server ...

Ähnliche Inhalte
Backup
Veeam Endpoint Backup findet SQL Datenbank nicht (1)

Frage von FFSephiroth zum Thema Backup ...

Datenbanken
gelöst Access 2010 SQL Tabellen Datensätze einfügen (6)

Frage von Dr.Cornwallis zum Thema Datenbanken ...

Windows Server
Sql server 2014 installation auf einer windows server 2012r2 vm (5)

Frage von meister00 zum Thema Windows Server ...

Windows Server
Sql server 2014 failover (8)

Frage von meister00 zum Thema Windows Server ...

Heiß diskutierte Inhalte
Exchange Server
Test-ActiveSyncConnectivity Error nach neuem Zertifikat (17)

Frage von Driphex zum Thema Exchange Server ...

Batch & Shell
gelöst Batch xls nach aktuellem Datum auslesen und email senden (14)

Frage von michi-ffm zum Thema Batch & Shell ...

Backup
Datensicherung ARCHIV (12)

Frage von fautec56 zum Thema Backup ...