Fragen zu SELECT, PHP, MYSQL

Benutzeravatar
tracer
Operator
Operator
Beiträge: 63851
Registriert: 18.08.2004 18:50:03
Wohnort: Kollmar
Has thanked: 5 times
Been thanked: 4 times
Kontaktdaten:

#16

Beitrag von tracer »

Holger Port hat geschrieben:
tracer hat geschrieben: Die Lösung mit LIKE ist portabel.
LIKE geht schon ist aber mit das langsamste was es gibt. Bei kleinen Datenmengen kein Problem nur wenn es mehr wird....
Ja, leider.
Gerade in diesem Fall mit dem Wildcard am Anfang, es würde nichtmal auf einen ggf. vorhandenen Index zugegriffen.

Je nach Anwendungsszenrio macht es da Sinn, mit den properitären Funktionen zu arbeiten, oder sich halt einen wrapper zu schreiben.

Evtl. kann Hank und sagen, um welche Datenmengen es sich in etwa handelt?
Benutzeravatar
hank
Beiträge: 617
Registriert: 31.12.2004 23:47:41
Wohnort: Rüdesheim am Rhein

#17

Beitrag von hank »

tracer hat geschrieben: Evtl. kann Hank und sagen, um welche Datenmengen es sich in etwa handelt?
da habe ich noch überhaupt keine Ahnung - also das soll so ein Terminkalender werden, für RC Treffen, Messen usw. Ich denke nicht, das es da eine große Datenmenge gibt.

Aber wenn es tatsächlich zu langsam wird, vieleicht sollte ich doch das eingegebene Datum umwandeln. Ich habe aber leider nicht so ganz verstanden, was ich mit Deinen Funktionen machen soll. Bin nicht gerade Profi in PHP und wühle mich so durch diverse Bücher und Webseiten.

Zur Zeit murkse ich gerade an dem Terminkalender und an einer RC-Frequenzliste für Europa.
Gruß - Jan
Benutzeravatar
tracer
Operator
Operator
Beiträge: 63851
Registriert: 18.08.2004 18:50:03
Wohnort: Kollmar
Has thanked: 5 times
Been thanked: 4 times
Kontaktdaten:

#18

Beitrag von tracer »

hank hat geschrieben:
tracer hat geschrieben: Evtl. kann Hank und sagen, um welche Datenmengen es sich in etwa handelt?
Ich habe aber leider nicht so ganz verstanden, was ich mit Deinen Funktionen machen soll. Bin nicht gerade Profi in PHP und wühle mich so durch diverse Bücher und Webseiten.
Also.

Gegeben, Du hast ein Formular, mit einem input type="text" name="mydate". Die User geben da "deutsches" Format ein. tt.mm.yyyy

In dem Script, was diese Daten bearbeitet macht Du folgendes:

$mydate = ger2iso($_REQUEST['mydate']);

$mydate kann Du dann in ein DATE Feld eintragen.

Bei der Ausgabe dann

SELCT ..., mydate, .... FROM ...

nun exec_qeury, fetcharry, z.B.

$row = mysql_fetch_array($query);

$mydate = iso2ger($row['mydate']);

Und schon sieht der Nutzer wieder "sein" Format.
Benutzeravatar
hank
Beiträge: 617
Registriert: 31.12.2004 23:47:41
Wohnort: Rüdesheim am Rhein

#19

Beitrag von hank »

hey super - ich habe mal wieder viel zu komliziert gedacht. Vielen Dank. Werde ich heute abend mal testen.
Gruß - Jan
speedy
Beiträge: 9028
Registriert: 22.10.2004 10:45:57
Wohnort: Stuttgart
Kontaktdaten:

#20

Beitrag von speedy »

es würde nichtmal auf einen ggf. vorhandenen Index zugegriffen.
Hmm ... ich dachte immer nen Index ist dafür da, um schneller zu suchen - oder meinst du jetzt nur, daß nicht auf den Index zurück gegriffen würde, weil am Anfang das Wildcard ist. Wenn also nur am Ende ein Wildcard wäre oder garkein Wildcard, dann würde also der Index verwendet werden ?


MFG,
speedy
Benutzeravatar
tracer
Operator
Operator
Beiträge: 63851
Registriert: 18.08.2004 18:50:03
Wohnort: Kollmar
Has thanked: 5 times
Been thanked: 4 times
Kontaktdaten:

#21

Beitrag von tracer »

Yap, nen Wildcard am Anfang verhindert, das auf den Index zugegriffen wird.
Zumindest das %.
speedy
Beiträge: 9028
Registriert: 22.10.2004 10:45:57
Wohnort: Stuttgart
Kontaktdaten:

#22

Beitrag von speedy »

Zumindest das %
Gibt es noch ein anderen Wildcard im SQL ?


MFG,
speedy
Benutzeravatar
tracer
Operator
Operator
Beiträge: 63851
Registriert: 18.08.2004 18:50:03
Wohnort: Kollmar
Has thanked: 5 times
Been thanked: 4 times
Kontaktdaten:

#23

Beitrag von tracer »

speedy hat geschrieben:
Zumindest das %
Gibt es noch ein anderen Wildcard im SQL ?
"_"
Antworten

Zurück zu „Klönschnack“