[quote=Oesi50,09.06.2004, 13:57]
QuoteHeisst das, dass die Reihenfolge des Ergebnisses zugesichert ist, wenn ein Index existiert? Das wuerde mir in der Tat helfen.
Ja so ist es.
[EDIT]das stimmt so nur mit der indizierten Spalte[/EDIT]
[/quote]Ich habe viele indizierten Spalten. Gewinnt der primary key? Hast du eine Referenz dazu?
Quotemich wundern aber Deine Ergebnisse. Überprüfe noch mal, ob dein Index wirklich richtig ist.
Die Tabellendefinition sieht so aus:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
+--------------+------------------+------+-----+---------------------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------------+------------------+------+-----+---------------------+----------------+
| accesslog_id | int(10) unsigned | | PRI | NULL | auto_increment |
| host | varchar(255) | | | | |
| user | varchar(255) | YES | MUL | NULL | |
| accessdate | datetime | | MUL | 0000-00-00 00:00:00 | |
| rtype | varchar(10) | | | | |
| file | varchar(255) | | MUL | | |
| querystring | text | YES | | NULL | |
| proto | varchar(8) | | | | |
| code | int(10) unsigned | | MUL | 0 | |
| bytes | int(10) unsigned | | | 0 | |
| refer | varchar(255) | YES | | NULL | |
| agent | varchar(255) | YES | MUL | NULL | |
| provider | int(10) unsigned | YES | MUL | NULL | |
| id | varchar(255) | YES | MUL | NULL | |
| int_time | int(11) | YES | MUL | NULL | |
+--------------+------------------+------+-----+---------------------+----------------+
In
http://dev.mysql.com/doc/mysql/en/ORDER_BY_optimisation.html sind die Faelle beschrieben, wo ORDER BY nicht optimiert werden kann. Am naechsten zu meinem Problem ist folgendes:
QuoteYou use ORDER BY on non-consecutive key parts:
SELECT * FROM t1 WHERE key2=constant ORDER BY key_part2;