AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi ADOQuery SQL und REPLACE

ADOQuery SQL und REPLACE

Ein Thema von msickel · begonnen am 22. Okt 2009 · letzter Beitrag vom 27. Okt 2009
Antwort Antwort
Seite 1 von 2  1 2   
msickel

Registriert seit: 14. Mai 2005
108 Beiträge
 
Delphi 2005 Professional
 
#1

ADOQuery SQL und REPLACE

  Alt 22. Okt 2009, 15:47
Datenbank: MSSQL EXPRESS • Zugriff über: ADO
Ich versuche folgendes

Delphi-Quellcode:
Select
  LocalUser,
  LocalNumber
from
  CallDetail
soweit geht das, nun möchte ich in diesem Select gleichzeitig ein REPLACE machen und habe das so Versucht

Delphi-Quellcode:
Select
  LocalUser,
  Replace(LocalNumber,'0UNKOWNNAME0','unbekannt')
from
  CallDetail
leider bleibt dann der Select von LocalNumer komplett leer, wie muss ich das richtig machen?

Vielen Dank für Eure Hilfe

Martin
ich weiss, das ich nichts weiss!
  Mit Zitat antworten Zitat
Benutzerbild von x000x
x000x

Registriert seit: 21. Jan 2004
Ort: Bei Hamburg
308 Beiträge
 
Delphi XE2 Professional
 
#2

Re: ADOQuery SQL und REPLACE

  Alt 22. Okt 2009, 16:39
Moin moin,

das wäre eine Möglichkeit...

SQL-Code:
Select
  LocalUser,
  case when CHARINDEX('0UNKOWNNAME0', LocalNumber) > 0 then
    Replace(LocalNumber,'0UNKOWNNAME0','unbekannt') else LocalNumber end
from
  CallDetail
Edit: expression1 und expression2 waren vertauscht
Peter
-= Gruss Peter =-
-= alias x000x =-
  Mit Zitat antworten Zitat
msickel

Registriert seit: 14. Mai 2005
108 Beiträge
 
Delphi 2005 Professional
 
#3

Re: ADOQuery SQL und REPLACE

  Alt 22. Okt 2009, 18:27
Cool, DAnke, werde ich morgen gleich mal ausprobieren

mfg
Martin
ich weiss, das ich nichts weiss!
  Mit Zitat antworten Zitat
msickel

Registriert seit: 14. Mai 2005
108 Beiträge
 
Delphi 2005 Professional
 
#4

Re: ADOQuery SQL und REPLACE

  Alt 23. Okt 2009, 08:39
geht leider nicht, nachwievor bleibt das komplette feld leer, woran könnte es noch liegen?
ich weiss, das ich nichts weiss!
  Mit Zitat antworten Zitat
Benutzerbild von sniper_w
sniper_w

Registriert seit: 12. Dez 2004
Ort: Wien, Österriech
893 Beiträge
 
Delphi 6 Enterprise
 
#5

Re: ADOQuery SQL und REPLACE

  Alt 23. Okt 2009, 09:39
Es liegt daran dass das Feld keinen Namen zugewiesen hat.
So sollte es gehen:
SQL-Code:
Select
  [LocalUser],
  [LocalNumber] = Replace(LocalNumber,'0UNKOWNNAME0','unbekannt')
from
  CallDetail
oder
SQL-Code:
Select
  [LocalUser],
  [LocalNumber] = case when CHARINDEX('0UNKOWNNAME0', LocalNumber) > 0 then
    Replace(LocalNumber,'0UNKOWNNAME0','unbekannt') else LocalNumber end
from
  CallDetail
Katura Haris
Es (ein gutes Wort) ist wie ein guter Baum, dessen Wurzel fest ist und dessen Zweige in den Himmel reichen.
  Mit Zitat antworten Zitat
Benutzerbild von x000x
x000x

Registriert seit: 21. Jan 2004
Ort: Bei Hamburg
308 Beiträge
 
Delphi XE2 Professional
 
#6

Re: ADOQuery SQL und REPLACE

  Alt 23. Okt 2009, 10:37
Moin moin,
SQL-Code:
Select
  LocalUser,
  Replace(LocalNumber,'0UNKOWNNAME0','unbekannt'),
  LocalNumber
from
  CallDetail
was steht denn in dem Fall in LocalNumber (3. Feld)? Das müsset dann ja auch leer sein?!
Peter
-= Gruss Peter =-
-= alias x000x =-
  Mit Zitat antworten Zitat
msickel

Registriert seit: 14. Mai 2005
108 Beiträge
 
Delphi 2005 Professional
 
#7

Re: ADOQuery SQL und REPLACE

  Alt 23. Okt 2009, 10:42
@sniper

wenn ich es so versuche bekomme ich die Fehlermeldung "incorrect syntax near ="

git es noch eine andere Variante?
ich weiss, das ich nichts weiss!
  Mit Zitat antworten Zitat
Benutzerbild von sniper_w
sniper_w

Registriert seit: 12. Dez 2004
Ort: Wien, Österriech
893 Beiträge
 
Delphi 6 Enterprise
 
#8

Re: ADOQuery SQL und REPLACE

  Alt 23. Okt 2009, 10:57
Hmmm...
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
Katura Haris
Es (ein gutes Wort) ist wie ein guter Baum, dessen Wurzel fest ist und dessen Zweige in den Himmel reichen.
  Mit Zitat antworten Zitat
Benutzerbild von x000x
x000x

Registriert seit: 21. Jan 2004
Ort: Bei Hamburg
308 Beiträge
 
Delphi XE2 Professional
 
#9

Re: ADOQuery SQL und REPLACE

  Alt 23. Okt 2009, 15:26
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:
LocalUser | LocalNumber
------------------------
Username1 | 123
------------------------
Username2 | 1unbekannt3
------------------------
          |
...
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.
Peter
-= Gruss Peter =-
-= alias x000x =-
  Mit Zitat antworten Zitat
msickel

Registriert seit: 14. Mai 2005
108 Beiträge
 
Delphi 2005 Professional
 
#10

Re: ADOQuery SQL und REPLACE

  Alt 23. Okt 2009, 20:34
Zitat von x000x:
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:
LocalUser | LocalNumber
------------------------
Username1 | 123
------------------------
Username2 | 1unbekannt3
------------------------
          |
...
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.
genau so sollte es aussehen, aber wenn ich es so mache wie im letzten Beitrag von Sniper sieht es leider so aus

LocalUser | LocalNumber
------------------------
Username1 | 123
------------------------
Username2 |
------------------------
|

mfg
Martin
ich weiss, das ich nichts weiss!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:08 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz