Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: astalapixa am März 18, 2011, 07:12:27

Titel: Kann man die ID nach 123... ordnen
Beitrag von: astalapixa am März 18, 2011, 07:12:27
Hallo,

kann man die ID nach 12345.... u.s.w. ordnen, ohne das die anderen Spalten geordnet werden?

MfG
Alex
Titel: Re: Kann man die ID nach 123... ordnen
Beitrag von: bahasu am März 18, 2011, 07:35:16
Moin,

bei den Tabellen-Eigenschaften gibt es den Punkt "Sortiert nach".

Vielleicht kannst Du damit die Sortierung nach der ID vornehmen.
Oder was ist gemeint mit nach Sortierung nach "12345"?

Harald
Titel: Re: Kann man die ID nach 123... ordnen
Beitrag von: MzKlMu am März 18, 2011, 08:13:01
Hallo,
die Frage ist mir unverständlich. Eine ID ist für mich ein Schlüsselfeld, das indiziert sein sollte. Damit ist auch die Sortierung festgelegt.
Außerdem kann man in eine Abfrage jede beleibige Spalte sortieren und zwar auch nur eine, ohne dass andere Spalten betroffen wären.

Eine Tabellensortierung ist nicht zu empfehlen.
Titel: Re: Kann man die ID nach 123... ordnen
Beitrag von: imp666 am März 18, 2011, 08:55:01
Möchtest du die Indizierung tatsächlich ändern? (Verknüpfungen zu anderen Tabellen können hier in Mitleidenschaft gezogen werden!)
Handelt es sich bei ID um ein Autowert-Feld?
Wofür benötigst du die "Umsortierung"? Als Datengrundlage für ein Endlosformular/Bericht (also um die Reihenfolge der Datensätze zu ändern)?
Tut es nicht auch eine einfache Sortierung?

Titel: Re: Kann man die ID nach 123... ordnen
Beitrag von: oma am März 18, 2011, 09:33:48
Hallo,

ich denke eher , Alex "kommt von Excel" wo solche Sortierungen möglich sind.

Alex: In Access kanns du nur ganze Datensätze sortieren,; wenn du z.B. in einer Abfrage nach einem Feld sortierts, werden eben die Datensätze so sortiert:

Gruß Oma
Titel: Re: Kann man die ID nach 123... ordnen
Beitrag von: MzKlMu am März 18, 2011, 10:18:02
Hallo,
achso, ich glaube jetzt habe ich verstanden. Er will nur eine Spalte sortieren ohne dass die anderen auch umgeschaufelt werden.
nein, das geht natürlich nicht.
Titel: Re: Kann man die ID nach 123... ordnen
Beitrag von: astalapixa am März 18, 2011, 15:26:16
genau das wollte ich........

naja dann geht es halt nicht.
Titel: Re: Kann man die ID nach 123... ordnen
Beitrag von: astalapixa am März 18, 2011, 15:32:10
Ich habe mehrere Abfragen von einer Liste gemacht, wo alle Schützen vom Turnier in den jeweiligen Klassen drin stehen.
In den Abfragen, werden die einzelnen Klassen z.B. Compound Herren , Compoud Damen u.s.w. abgefragt und nach Punkten sortiert.
Nun sollte aber in den Abfragen vor den Schützen auch Platz 1, Platz 2 u.s.w. stehen.

Vieleicht hat ja jemand ne Lösung?

Gruß Alex
Titel: Re: Kann man die ID nach 123... ordnen
Beitrag von: oma am März 18, 2011, 15:55:14
Hallo Alex,

wenn die Punkte in einer Tabelle eingetragen werden, so kannst du wie folgt die einzelnen Plätze ausgeben:


SELECT Sportler, Punkte,
(SELECT Count(*) from tblSportler as Temp WHERE Temp.Punkte > tblSportler.Punkte)+1 AS Platz
FROM tblSportler
ORDER BY Punkte DESC


wenn in einer Abfrage die Punkte zusammengetragen u. ermittelt werden, so kannst du im SQL-Befehl die Tabelle mit einer Abfrage ersetzen.

Gruß Oma
Titel: Re: Kann man die ID nach 123... ordnen
Beitrag von: astalapixa am März 18, 2011, 16:27:54
Ich bin ziemlich neu im Umgang mit access und verstehen diese eingaben noch nicht so, vieleicht könnt ihr mir die auch für nen laien erklären?

Danke Alex
Titel: Re: Kann man die ID nach 123... ordnen
Beitrag von: oma am März 18, 2011, 16:32:04
Hallo,

du musst einfach die Abfrage kopieren u. in einer Abfrage deine DB einsetzen; im Abfrage-Entwurf mit Menüpunkte Ansicht --> SQL-Ansicht u. dort den Code hinein kopieren. Dann natürlich deine Tabellen- und Feldbezeichnungen anpassen!

Gruß Oma
Titel: Re: Kann man die ID nach 123... ordnen
Beitrag von: astalapixa am März 18, 2011, 16:49:35
SELECT Schützen.Name, Schützen.Vorname, Schützen.Verein, Schützen.Wertungsklasse, Schützen.Bogenart, Schützen.Punkte, Schützen.[X - Kills], Schützen.Werten, Schützen.Bezahlt, *
(SELECT Count(*) from Schützen.Name as Temp WHERE Temp.Schützen.Punkte > Schützen.Name.Schützen.Punkte)+1 AS Platz
FROM Schützen
ORDER BY Schützen.Punkte DESC , Schützen.[X - Kills] DESC


So sieht jetzt meine Abfrage aus aber da kommt immer ein Fehler: Syntaxfehler (fehlender Operator) in Abfrageausdruck`*(Select Count(*) from Schützen.Name as Temp Where Temp.Schützen.Punkte >Schützen.Name.Schützen.Punkt)+1´.


Die Ursprüngliche Abfrage sieht so aus:

SELECT Schützen.Name, Schützen.Vorname, Schützen.Verein, Schützen.Wertungsklasse, Schützen.Bogenart, Schützen.Punkte, Schützen.[X - Kills], Schützen.Werten, Schützen.Bezahlt, *
FROM Schützen
WHERE (((Schützen.Wertungsklasse)="Compound Herren") AND ((Schützen.Werten)="Ja") AND ((Schützen.Bezahlt)="Ja"))
ORDER BY Schützen.Punkte DESC , Schützen.[X - Kills] DESC;

Titel: Re: Kann man die ID nach 123... ordnen
Beitrag von: DF6GL am März 18, 2011, 21:09:28
Hallo

das Sternchen vor der Unterabfrage ist zuviel ,..


SELECT Schützen.Name, Schützen.Vorname, Schützen.Verein, Schützen.Wertungsklasse, Schützen.Bogenart, Schützen.Punkte, Schützen.[X - Kills], Schützen.Werten, Schützen.Bezahlt, *       (SELECT Count(*) from Schützen.Name as Temp WHERE Temp.Schützen.Punkte > Schützen.Name.Schützen.Punkte)+1 AS Platz
FROM Schützen
ORDER BY Schützen.Punkte DESC , Schützen.[X - Kills] DESC

Titel: Re: Kann man die ID nach 123... ordnen
Beitrag von: astalapixa am März 18, 2011, 23:27:28
Wenn ich das Sternchen entferne, kommt die Fehlermeldung das er die Datenbank nicht findet....

Hilfe...

Ich komm nicht weiter.

MfG
Alex
Titel: Re: Kann man die ID nach 123... ordnen
Beitrag von: astalapixa am März 19, 2011, 07:24:47
Ok nun funktioniert es, war mein Fehler ich hatte die Schützen nicht angegeben.

Jetzt ist aber das Problem, das ich einen Parameter wert eintragen soll, sonst sind die Zeilen leer?

Was muß ich tun?

MfG Alex
Titel: Re: Kann man die ID nach 123... ordnen
Beitrag von: DF6GL am März 19, 2011, 11:37:00
Hallo,

die ganze Unterabfrage ist verkorkst...

(SELECT Count(*) from Schützen as Temp WHERE Temp.Punkte > Schützen.Punkte)




Weiterhin:  Auf Sonder- und Leerzeichen verzichten und keine reservierten Wörter für Namen benutzen.


(Wo und was schießt Du denn?     Me: Olympic Recurve, Fita, Feld)