-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
Aber wer will schon freiwillig mit ihm Kontakt aufnehmen? :duck:
-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
Das wird intern mit ziemlicher Sicherheit bereits optimiert, da würde ich mir keine Sorgen machen.
-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
Und wenn Du im ORDER BY hinter jedes Feld DESC schreibst?
Ich kaufe ein "R" :mrgreen:
-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
Jaja, schon gut, hab ich vergessen :oops:
-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
Nur zur Sicherheit:
nächster DSSELECT
ID
FROM
adressen
WHERE
CONCAT_WS(' ',gesch_firma,name,vorname,CAST(ID AS VARCHAR)) >=
(SELECT
CONCAT_WS(' ',gesch_firma,name,vorname,CAST(ID AS VARCHAR))
FROM
-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
Nach genauer Überlegung stimmt es, dass das Statement bei wiederholter Ausführung u.U. immer zwischen 2 DS hin- und herspringen würde. Das könnte man vermeiden, indem man die ID in das künstlich erzeugte Vergleichsfeld mit einbezieht. Aber dazu muss ja erst einmal ein Ergebnis kommen.
-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
Markus, könntest Du nochmal nach meinem Edit in #40 schauen?
-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
Na also, wenn ich LIMIT nicht völlig falsch verstanden habe richtet das sich nach der aktuellen Sortierreihenfolge. Btw suche ich immer noch meinen Denkfehler :gruebel:
Dröseln wir das mal gemeinsam auf.
SELECT
ID
FROM
adressen
WHERE
CONCAT_WS(' ',gesch_firma,name,vorname) >=
(SELECT
-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
Aber Du weißt doch nicht, an welcher Stelle der Datensatz mit der ID X steht, oder hab ich einen Knoten im Hirn?
-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
Markus, das Problem ist, dass er den Offset nicht kennt.
-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
Setz doch bitte mal zur Kontrolle folgendes Statement ab:SELECT
CONCAT_WS(' ',gesch_firma,name,vorname)
FROM
adressen
ORDER BY
1
Kommt da ein Ergebnis? Ich habe hier leider kein MySQL verfügbar.
-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
Nur zur Kontrolle, ob ich die Anforderung richtig interpretiert habe: angenommen, Du hast die AbfrageSELECT
ID, Firma, Name, Vorname
FROM
Tabelle
ORDER BY
Firma, Name, Vorname
Dabei kommt dann so etwas heraus:
42 Meier GmbH Meier Alfred
1337 Meier GmbH Meier Boris
-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
Dann muss ich aber einen dicken Denkfehler in meiner Logik gemacht haben :gruebel:
-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
Wo hat himitsu was vorgeschlagen? Und hast Du das mal mit verschiedenen IDs versucht, es ist ja immerhin möglich, dass Du zufällig den letzten DS in der Sortierfolge erwischt hast.
-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
CONCAT_WS hängt die Strings ab Parameter 2 hintereinander, verwendet aber den 1. Parameter als Trenner.
-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
Ich habe noch nie gehört, dass ein SQL-Statement ein Endlosschleife ergeben soll :gruebel:
-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
Wie sieht es so aus?SELECT
ID
FROM
adressen
WHERE
CONCAT_WS(' ',gesch_firma,name,vorname) >=
(SELECT
CONCAT_WS(' ',gesch_firma,name,vorname)
FROM
adressen
-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
Nö, nur die ID. Also kauft er für ein Glas Milch gleich eine ganze Kuh :mrgreen:
-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
Es ist übrigens Quatsch, alle Felder abzufragen, wenn man nur die ID braucht.
-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
Aber dann müsstest Du zur Sicherheit noch nach ID sortieren, wenn ich gerade keinen Denkfehler mache.
-
Forum: Datenbanken
by DeddyH,
8. Jun 2010
Ich denke, mit Aggregatfunktionen käme man weiter.SELECT MIN(ID)
FROM Tabelle
WHERE ID > :aktuelle_ID