![]() |
Datenbank: MSSQL EXPRESS • Zugriff über: ADO
ADOQuery SQL und REPLACE
Ich versuche folgendes
Delphi-Quellcode:
soweit geht das, nun möchte ich in diesem Select gleichzeitig ein REPLACE machen und habe das so Versucht
Select
LocalUser, LocalNumber from CallDetail
Delphi-Quellcode:
leider bleibt dann der Select von LocalNumer komplett leer, wie muss ich das richtig machen?
Select
LocalUser, Replace(LocalNumber,'0UNKOWNNAME0','unbekannt') from CallDetail Vielen Dank für Eure Hilfe Martin |
Re: ADOQuery SQL und REPLACE
Moin moin,
das wäre eine Möglichkeit...
SQL-Code:
Edit: expression1 und expression2 waren vertauscht
Select
LocalUser, case when CHARINDEX('0UNKOWNNAME0', LocalNumber) > 0 then Replace(LocalNumber,'0UNKOWNNAME0','unbekannt') else LocalNumber end from CallDetail |
Re: ADOQuery SQL und REPLACE
Cool, DAnke, werde ich morgen gleich mal ausprobieren
mfg Martin |
Re: ADOQuery SQL und REPLACE
geht leider nicht, nachwievor bleibt das komplette feld leer, woran könnte es noch liegen?
|
Re: ADOQuery SQL und REPLACE
Es liegt daran dass das Feld keinen Namen zugewiesen hat.
So sollte es gehen:
SQL-Code:
oder
Select
[LocalUser], [LocalNumber] = Replace(LocalNumber,'0UNKOWNNAME0','unbekannt') from CallDetail
SQL-Code:
Select
[LocalUser], [LocalNumber] = case when CHARINDEX('0UNKOWNNAME0', LocalNumber) > 0 then Replace(LocalNumber,'0UNKOWNNAME0','unbekannt') else LocalNumber end from CallDetail |
Re: ADOQuery SQL und REPLACE
Moin moin,
SQL-Code:
was steht denn in dem Fall in LocalNumber (3. Feld)? Das müsset dann ja auch leer sein?!
Select
LocalUser, Replace(LocalNumber,'0UNKOWNNAME0','unbekannt'), LocalNumber from CallDetail |
Re: ADOQuery SQL und REPLACE
@sniper
wenn ich es so versuche bekomme ich die Fehlermeldung "incorrect syntax near =" git es noch eine andere Variante? |
Re: ADOQuery SQL und REPLACE
Hmmm... :gruebel:
So?
SQL-Code:
Select
LocalUser, Replace(LocalNumber,'0UNKOWNNAME0','unbekannt') AS LocalNumber from CallDetail
SQL-Code:
Select
LocalUser, case when CHARINDEX('0UNKOWNNAME0', LocalNumber) > 0 then Replace(LocalNumber,'0UNKOWNNAME0','unbekannt') else LocalNumber end AS LocalNumber from CallDetail |
Re: ADOQuery SQL und REPLACE
Moin moin,
ich denke mal, mein "case when" kannste getrost vergessen, denn Replace macht das ja schon und ersetzt nur das vorkomen von '0UNKOWNNAME0'. Ist denn das Ergebnis leer oder die Feldnamen?! Eventuell schreibst du mal, wie dein gewünschtes Ergebnis aussehen sollte, also etwa so:
Code:
Wenn ja, dann funktioniert es genauso wie sniper_w es im letzten Beitrag geschrieben hat. Wenn nicht, dann teile uns bitte mal dein gewünschtes Ergebnis mit.
LocalUser | LocalNumber
------------------------ Username1 | 123 ------------------------ Username2 | 1unbekannt3 ------------------------ | ... |
Re: ADOQuery SQL und REPLACE
Zitat:
LocalUser | LocalNumber ------------------------ Username1 | 123 ------------------------ Username2 | ------------------------ | mfg Martin |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:56 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz