Top-Themen

Aktuelle Themen (A bis Z)

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

SQL Befehl zum Teilen eines String

Frage Entwicklung Datenbanken

Mitglied: TrommelBommel

TrommelBommel (Level 1) - Jetzt verbinden

25.04.2006, aktualisiert 23:11 Uhr, 24428 Aufrufe, 5 Kommentare

Hallo,
ich habe in einer Datenbank eine Spalte in der z.B: solch Werte stehen ":abc:abc:abc".
Wie kann ich diese per SQL Befehl ausseinander Teilen zu 3 Werten "abc"
Special greets aus der Lausitz.
Mfg TrommelBommel
Mitglied: Dani
25.04.2006 um 14:10 Uhr
Hi,
also ich wüsste nicht, dass man das in SQL machen könnte! Aber in PHP geht es mit:

Split:
01.
list($w1,$w2,$e3)=split("\:",Variable);
Explode:
01.
$werte=explode(":",Variable); //Hier stehen alle Werte in einem Feld / Array drinne.

Gruß
Dani
Bitte warten ..
Mitglied: pi314
25.04.2006 um 15:20 Uhr
Wie kann ich diese per SQL Befehl
ausseinander Teilen zu 3 Werten

Wie du schon bemerkst, bräuchtest ja einen Befehl.
Da aber SQL nur eine Abfragesprache ist (eigentlich keine richtige Programmiersprache damit), kannst du solche Dinge nur über Sprachen verwirklichen, da du ja auch Kontrollstrukturen usw. brauchst.
Man kann nicht per SQL-Abfrage aus einer Spalte drei (oder nicht definierte) machen.
Könnte höchstens sein, dass es herstellerabhängiges SQL gibt, das so was zur Verfügung stellt, aber native-SQL sieht das nicht vor.

Somit entweder per PHP (siehe Dani-Kommentar) oder per PL/SQL... Prozeduren sind ja jetzt auch in MySQL möglich.
Bitte warten ..
Mitglied: TrommelBommel
25.04.2006 um 15:26 Uhr
Vielen Dank für die Antworten.
Wieder eine Erfahrung reicher
Bitte warten ..
Mitglied: Biber
25.04.2006 um 20:35 Uhr
Hmm, so ist es aber missverständlich formuliert - sowohl Frage wie Antworten.

a) Von was für einer Datenbank reden wir denn? Paradox? DB2? Oracle? Teradata?
In ziemlich allen ernstzunehmenden SQL-Datenbanken kannst Du User Defined Functions definieren, die Dir auch so eine Token/ArrayList-Mimik ermöglichen.
Diese UDFs sind SQL-nah aufgebaut (also Erweiterungen des Standard-SQL-Umfangs), aber eben keine Zugriffe auf andere Programmiersprachen.

b) Aber, den Umweg über andere Prog-Sprachen/Dialekte gibt es ja auch - billigstes Beispiel wäre MS-ACCESS mit seinem VBA-Schnickschnack.

c) und last not least: eigentlich ist es in Datenbanktabellen ohnehin so gedacht, dass auf VIEWs oder Abfragen/Sichten zugegriffen wird und nicht auf die physikalisch vorhandenen Datenfelder. Bau Dir einen View, der Dir Dein eines vorhandenes Feld als drei einzelne Felder anzeigt. Fertig.
Allerdings wirst Du das Feld NICHT durch Änderung der drei Teilfelder updaten können ohne Programmlogik.

Gruß
Biber
Bitte warten ..
Mitglied: Guenni
25.04.2006 um 23:11 Uhr
Nur so nebenbei:

Ein Blick in die Hilfe oder in ein Buch ist manchmal hilfreich

Zumindest MS-ACCESS und MySQL(mehr habe ich nicht zum Testen) bieten
entsprechende Funktionen.

Eine Spalte ist mit folg. Wert belegt:


Spalte
abc:def:ghi

Dann bringt folgende Anweisung

SELECT left(spalte,3) as Wert1, left( right(spalte,7),3) as Wert2,right(spalte,3) as Wert3 FROM Tabelle;

dieses Ergebnis:

Wert1 Wert2 Wert3
abc def ghi

Die Syntax ist bei MS-ACCESS und MySQL identisch.

Na gut, ist für oben genannte Anwendung natürlich nur sinnvoll, wenn der Spalteninhalt klar definiert ist bzw.
einer Regel unterliegt.

Aber ich denke mal, dass auch andere SQL-Versionen Funktionen zur Stringmanipulation bereitstellen,
denn es muß ja(m.M. nach) möglich sein, entsprechende VIEWs zu erzeugen, ohne auf komplexe
Programmierlogik(VBA, C++ etc) und Webinterfaces(PHP) zurückgreifen zu müssen.

Gruß
Günni
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Teil eines Strings löschen
gelöst Frage von Dnis822Batch & Shell18 Kommentare

Hallo zusammen, ich komme gerade bei folgendem Punkt nicht weiter: Ich habe eine Datei die völlig unformatiert ist, das ...

Batch & Shell
Teil eines Strings als Variable setzen
gelöst Frage von tHe-jAyBatch & Shell2 Kommentare

Hallo, für ein kleines Batch-Script benötige ich einen Servicenamen als Variable. Den Servicenamen frage ich über folgenden Befehl ab: ...

Batch & Shell
VBS String nach letztem Leerzeichen teilen
gelöst Frage von citroendsvierBatch & Shell8 Kommentare

Hallo zusammen, ich habe in VBS eine Variable, die in etwa folgenden Inhalt enthält: Jetzt möchte ich das ganze ...

Datenbanken
Einen String in zwei Strings splitten per SQL
gelöst Frage von essu2307Datenbanken8 Kommentare

Hallo, ich habe folgenden String in meiner Tabelle "accountingEntryExport_13344_UTC090040_23.csv.gz" nun möchte ich per SQL-Befehl den in zwei Teilen Splitten, ...

Neue Wissensbeiträge
Internet

EU-DSGVO: WHOIS soll weniger Informationen liefern

Information von sabines vor 4 StundenInternet3 Kommentare

Wegen der europäische Datenschutzgrundverordnung stehen die Prozesse um die Registierunf von Domains auf dem Prüfstand. Sollte die Forderungen umgesetzt ...

Verschlüsselung & Zertifikate

19 Jahre alter Angriff auf TLS funktioniert immer noch

Information von BassFishFox vor 10 StundenVerschlüsselung & Zertifikate1 Kommentar

Interessant zu lesen. Der Bleichenbacher-Angriff gilt unter Kryptographen als Klassiker, trotzdem funktioniert er oft noch. Wie wir herausgefunden haben, ...

Windows 10

Windows 10 Fall Creators Update - Neue Funktion Hyper-V Standardswitch kann ggf. Fehler bei Proxy Configs verursachen

Erfahrungsbericht von rzlbrnft vor 21 StundenWindows 103 Kommentare

Hallo Kollegen, Da wir die Gefahr lieben, haben wir bei einigen Usern nun mittlerweile das Creators Update drauf. Einige ...

Sicherheit

TLS-Zertifikat und privater Schlüssel von Microsofts Dynamics 365 geleakt

Information von Penny.Cilin vor 23 StundenSicherheit

Microsoft hat versehentlich das TLS-Zertifikat inklusive dem privaten Schlüssel seiner Business-Anwendung Dynamics 365 geleakt. TLS-Zertifikat und privater Schlüssel von ...

Heiß diskutierte Inhalte
Netzwerkmanagement
Firefox Profieles im Roaming
gelöst Frage von Hendrik2586Netzwerkmanagement17 Kommentare

Hallo liebe Leute. :) Ich hab da ein kleines Problem, welches anscheinend nicht unbekannt ist. Wir nutzen hier in ...

Netzwerkmanagement
NAS über zwei weitere Ethernet Anschlüsse verbinden
gelöst Frage von Sibelius001Netzwerkmanagement16 Kommentare

Sorry - ich bin hier wahrscheinlich als kompetter IT Trottel unterwegs. Aber eventuell kann mir jemand ganz einfach helfen: ...

LAN, WAN, Wireless
Von rj11 auf rj45
Frage von jensgebkenLAN, WAN, Wireless16 Kommentare

Hallo Gemeinschaft, könnt ihr mir vielleicht bei der anfertigung eines Kabels helfen - habe ein rj 11 stecker und ...

LAN, WAN, Wireless
Häufig Probleme beim Anmelden in WLAN
Frage von mabue88LAN, WAN, Wireless15 Kommentare

Hallo zusammen, in einem Netzwerk gibt es relativ häufig (1-2 mal pro Woche) Probleme mit der WLAN-Verbindung. Zunächst mal ...