Mailinglisten-Archive |
Norbert Hartl wrote: > > On Mon, Mar 29, 1999 at 08:21:41AM +0200, Paul Schwarzl wrote: > > Hallo > > > > Was viel wichtiger ist wie suchst du? (order by, Joker, ..) > > Gib mir ein typisches Beispiel > > > Ein Beispielselect sieht ungefaehr so aus (weiss nicht ob das hilft) > > SELECT id, col4 FROM table WHERE col1 = 'XXX' and (col2 = '1999-xx-xx') AND col3 < 99 and (col4 >= 500 and col4 <= 1000) and (col5 = 'YYY' OR col5 = 'ZZZ' OR col5 = 'AAA') ORDER BY col4; > > Was ist denn Joker? > > > Zu 3.) Kannst du nicht die beiden Char-Felder in ein Feld bringen und in der > > App wieder trennen? > > Hmmm, die Char-Felder sind Flughaefen und ich suche die passenden Paare > fuer den Abflughafen und den Ankunftshafen. Ich habe im Moment keine > Idee, wie das gehen sollte und was es bringen wuerde. > > > Zu 4.) Wird dein während eines Selects knapp, dann erhöhe ihn. (Bei ca. 250 > > Ergebnissdatensätzen sollte er aber ausreichen) > > > Das verstehe ich nicht. > > Norbert Hallo Norbert Meiner Erfahrung nach verwendet mysql bei OR die Indexe nicht (oder schlecht). Wenn ich mich richtig erinnere, dann soll das einer der Verbesserungen von 3.23.xx werden. Versuch doch einfach drei SELECT's nacheinander. Da Du keine Wildcards (= Joker's :) verwendest, brauchst Du nicht mal Duplikate zu fürchten. Lediglich das Sortieren geht dann natürlich nicht. Als Abhilfe dafür kannst Du aber eine temporäre Tabelle anlegen. Dann die gesuchten Felder dort reinschreiben und erst anschließend einen SELECT mit ORDER BY auf diese temporäre Tabelle absetzen. Vielleicht ist das schneller? Tschau Christian
php::bar PHP Wiki - Listenarchive