gechger
Goto Top

SQL Script zur Select Ausgabe bei Textdetails

als blutiger SQL Anfänger brauche ich etwas Starthilfe

Hallo Forum,

ich habe eine MYSQL Datenbank eingerichtet, in die automatisch Daten geschrieben werden. Die benutze Tabelle besitzt 4 Eintrage:
ID, Werte, Datum und Flag. Es geht mir um die Werte.

Die Struktur der Werte sieht so aus:

2008-07-30_12:30:56 table=BB bTYP=10105 bLOG=1603 bDAT=2008-07-30_12:31:03 bIMP=1468 bFLAG=0 bGPS=A,5006.2629,N,00842.2784,E, bTER=0 bPER=43

Werte ist als Text deklariert und NULL ist verboten.

In der Tabelle befinden sich so 120000 Zeilen, jeden Tag kommen gut 2000 dazu. Mich interessiert der Eintrag blog=. Ich möchte in einem select Befehl nur die Daten ausgeben, die "blog=1603" beinhalten.

SELECT * FROM `Tabelle` WHERE werte like '?blog=1603?'; liefert kein Ergebnis
SELECT * FROM `Tabelle`where `werte`= '_blog=1603_' ; liefert kein Ergebnis
Habs auch schon mit % als Platzhalter probiert. Nie bekomme ich ein Ergebnis.

Wäre für einen Tip sehr dankbar.

Schöne Grüße
Christof

Content-Key: 93225

Url: https://administrator.de/contentid/93225

Printed on: April 24, 2024 at 19:04 o'clock

Member: 61kenan
61kenan Jul 30, 2008 at 12:52:47 (UTC)
Goto Top
Hi Christof,

hast du es schon mit einem verschachtelten Select ausprobiert?

Das es nicht klappt, ist echt merkwürdig. Du meinst du hättest es mit dem '% Zeichen' als Platzhalter versucht! Hast du aber auch versucht % sowohl am Anfang mit zu schreiben, als auch am ende?

WHERE werte = '%blog=1603%'.

Gruß
Kenan
Member: gechger
gechger Jul 30, 2008 at 13:02:32 (UTC)
Goto Top
Hallo Kenan,

habe ich probiert
SELECT * FROM `mzlife` where `werte`= '%blog=1603%';

Ergebnismenge ist 0, obwohl ca. 3000 Zeilen diesen Wert haben.

Gruß
Christof
Member: AndreasHoster
AndreasHoster Jul 30, 2008 at 13:04:23 (UTC)
Goto Top
Das es nicht klappt ist korrekt, der Datentyp Text ist für sowas nicht gedacht.
varchar wäre der richtige.
text ist ein clob (character large Object) auf den keine Abfrage Funktionen funktionieren.
Edit:
Obiges ist nur die halbe Wahrheit, auch die Abfrage ist falsch.
='....' sucht exakt diesen Wert, d.h. auch das %
Um % als Wildcard zu verwenden muß man Like nehmen.
Also where SPALTENNAME Like '%Beispiel'
Member: gechger
gechger Jul 30, 2008 at 13:13:12 (UTC)
Goto Top
Hallo Andreas,

habs gefunden:

SELECT `werte` FROM `mzlife` where `werte`like'%blog=1201%';

mit dem LIKE Befehl bekomme ich die gewünschte Ausgabe.

Danke für Eure Hilfe

Schöne Grüße
Christof