Office: (Office 2010) Sortierreihenfolge in Abfrage bei drei Feldern

Helfe beim Thema Sortierreihenfolge in Abfrage bei drei Feldern in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo, mich wunderte die Aussage eines DB-Anwenders, dass eine vereinbarte Sortierreihenfolge in einzelnen Textfeldern nicht der Absprache entspricht.... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Klaus B aus D, 19. Januar 2014.

  1. Sortierreihenfolge in Abfrage bei drei Feldern


    Hallo,

    mich wunderte die Aussage eines DB-Anwenders, dass eine vereinbarte Sortierreihenfolge in einzelnen Textfeldern nicht der Absprache entspricht.

    Ein Blick auf die Datenblattansicht des AbfrageEntwurfs für die Datenherkunft des Formulars zeigt tatsächlich, dass die Einträge im Feld "Störungsbeschreibung" nicht aufsteigend sortiert erscheinen - weder im Formular noch im Bericht, der dieselbe Datenherkunft nutzt.

    Verschiebe ich das Feld "Störungsbeschreibung" so, dass es von links nach rechts als erstes bei den aufsteigend sortierten Feldern liegt, dann stimmt die alphabetische Reihenfolge.

    Was passiert da?

    Gruß
    Klaus

    :)
     
    Klaus B aus D, 19. Januar 2014
    #1
  2. Hallo Klaus,
    sortiert wird eben immer von links nach rechts.
    In deinem Abfrageentwurf als in der Reihenfolge
    TA_ID, TA_Bez, usw.
    Was ist daran verwunderlich?

    Edit: Blödsinn gehört durchgestrichen
    Ich hatte mir die Ergebnisansicht nicht genau angesehen, mea culpa.
     
    Marsu65, 21. Januar 2014
    #2
  3. \@Marsu: es sieht so aus, dass TA_Bez (TA_Id=2) und BE_Bez (BE_Id=5) gleich sind - damit sollte tatsächlich nach dem 3. Feld sortiert werden, und das ist's nicht.

    Ich empfehle den SQL-Code der Abfrage zu kopieren, die alte Abfrage umzubenennen (nachher löschen). Neue Abfrage anlegen, zuvor kopierten Code in SQL-Ansicht einfügen, Abfrage unter altem Namen speichern. Kontrollieren.
     
    Arne Dieckmann, 21. Januar 2014
    #3
  4. Sortierreihenfolge in Abfrage bei drei Feldern

    Hallo,

    in dem Screenshot ist ja nicht wirklich viel zu sehen. Klaus poste doch mal den SQL-String der Abfrage.
     
    el_gomero, 21. Januar 2014
    #4
  5. #gelöscht
     
    Marsu65, 21. Januar 2014
    #5
  6. Hallo,

    die Reihenfolge der Sortierfelder bestimmt die Reihenfolge der Sortierung - das ist doch wohl logisch, oder?
    Da man sowohl die Abfrage als auch die Ausgabe nur teilweise sieht, kann man nicht viel dazu sagen.

    Außerdem:
    Bei Abfragen ist stets der SQL-Code anzugeben, Ausschnitte aus der Entwurfsansicht sind nicht aussagefähig genug.
    Es könnte auch noch eine Sortierung im Formular eingestellt sein, die die Sortierung in der Abfrage außer Kraft setzt.
     
    Anne Berg, 21. Januar 2014
    #6
  7. Hallo,

    da sich einige "Mitdenker" gemeldet haben, hier der SQL-Code des Sortierproblems. Code:
    Gruß
    Klaus
     
    Klaus B aus D, 21. Januar 2014
    #7
  8. Sortierreihenfolge in Abfrage bei drei Feldern

    Hi,

    das sollte auch für dich nicht uninteressant sein, wenn du dir mal den SQL-Code anschaust,
    denn der "*" am Ende der Feldliste ist sicherlich nicht "freiwillig" bzw. absichtlich entstanden
    und sollte dort entfernt werden.

    Ansonsten kann man dazu nur sagen:
    - schau dir das Ergebnis dieser Auswahlabfrage an - ist es wunschgemäß sortiert?
    - schau dir an, was im Formular mit dieser Vor-Sortierung passiert.

    PS:
    DU bist der Entwickler, also lerne, hinter die Kulissen zu schauen und vertraue nicht nur der Access-Oberfläche.
     
    Anne Berg, 21. Januar 2014
    #8
  9. Nur so am Rande:
    Code:
    muss das nicht
    Code:
    heißen?
    maike
     
  10. Hi Anne,

    ich weiß sehr wohl, dass mir ein Blick hinter die Objekte wesentlich weiter hilft, als die Betrachtung der Oberflächen. Danke für den Tipp.

    Das Platzhalterzeichen "*" muss tatsächlich durch die Entwicklung des Formulars "frmSicherheitskonzept" in Zusammenspiel mit einem UFo "sfmBeEbeneSiKo" gezielt entstanden sein, denn wenn ich es entferne, dann entsteht etwas völlig Unerwartetes: in meinem Kombinationsfeld "cboFS_BE_ID" im "frmSicherheitskonzept" erscheint der Eintrag "#Name".
    Damit sehe ich auch keinen Eintrag mehr im UFo, denn HFo und UFo sind über die Dateneinträge im Feld "cboFS_BE_ID" verknüpft (s. Bild).
    Primärschlüssel im HFo ist das Feld "EinzelstörungsNr", dem ich bei einer Sicherheitsbetrachtung eine bestimmte Betrachtungseinheit (BE) zuordnen muss. Und diese Festlegung erfolgt über das Kombinationsfeld "cboFS_BE_ID", in welchem eine BE_ID ausgewählt werden kann.

    @ maike:
    In der Abfrage steht nicht IsNull sondern IstNull und weil ich nicht mehr weiß, wofür es eingefügt war, habe ich es entfernt.

    @ Arne: die "Runderneuerung" einer qrySicherheitskonzept hatte keinen Erfolg: leider wird weiterhin nicht nach dem 3. Feld in der Reihenfolge sortiert.

    Noch ein Hinweis: auch der Versuch, die Abfrage aufzuteilen, TA und BE in einer qryA und diese qryA zusammen mit der tblSicherheitskonzept verknüpft zur qry B als Datenherkunft für das "frmSicherheitskonzept" bringt keine Veränderung des Sortierproblems.

    Gruß
    Klaus
     
    Klaus B aus D, 21. Januar 2014
    #10
  11. Eine Abfragedefinition ist eigentlich etwas Simples. Manchmal legt abr jemand noch Eigenschaften für das Abfrageobjekt an.

    Im einfachen Fall löschst Du diese Abfrage, schließt die Datenbank (Herstellung eines definierten Zustandes) und erstellst die Abfrage nach Neustart neu.
    Wenn Du die SQL-Anweisung erst in eine Textdatei (Notepad) kopierst und dann von dort zurück übernimmst, geht die Neuerstellung schneller, und Du hast bessere Gewissheit, dass nur das angelegt wird, was Du siehst.

    Wenn das immer noch nicht gelingt, erstellst Du einen Demoauszug und stellst ihn hier ein.
     
  12. Hallo,

    es fehlt die Antwort auf meine Fragen:
    muss das nicht
    Code:
    heißen?

    Muss es nicht, wenn schon die IIF-Funktion eingesetzt wird kann man auch gleich IsNull() verwenden.
    Der Zugriff auf die VBA-Funktionen läuft natürlich nur innerhalb von Access.

    Du meinst wohl den Abfrage-Entwurf und Ja, dort wird Deutsch gesprochen. Im SQL-Fenster siehst du dann die ver-englischte Version.

    Es wird einen Grund gehabt haben, dass das Feld auf NULL geprüft wurde, daher solltest du mit solchen Änderungen "aus dem Bauch heraus" vorsichtig sein, denn "weil ich nicht mehr weiß" genügt nicht als Begründung, es plötzlich anders zu machen.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    Anne Berg, 22. Januar 2014
    #12
  13. Sortierreihenfolge in Abfrage bei drei Feldern

    //OT: Null und die Prüfung darauf hat nun nichts mit Sortierung zu tun.
    Der Vorschlag von maike ist vielleicht funktional nicht notwendig, weil IsNull auch funktioniert. Aber: Die Prüfung mit "is null" ist eine SQL-Methode und damit zu erwarten schneller als die Einbettung einer VBA-Funktion. Das mag zwar wiederum hier keine Rolle spielen, dient aber der Bildung von guten Gewohnheiten, die man dann auch hat, wenn es denn doch einmal eine (und dann vielleicht wesentliche) Rolle spielt, während bei einem "auch gleich IsNull" eerst einmal die Alternative einfallen muss.
     
  14. \@ebs17:
    Ich wusste es, dass mein Statement einen Kommentar deinerseits provozieren würde, auf dich - insbesondere als SQL-Kenner - ist eben Verlass! *Smilie
     
    Anne Berg, 22. Januar 2014
    #14
  15. Ich mische mich mal wieder in die Expertenriege.

    Die Umsetzung des Vorschlags von Eberhard aus #11 brachte keinen Erfolg.
    Werde mal eine Version meiner DB schaffen, bei der die Problematik weiterhin besteht, und die dann hochladen.

    Gruß
    Klaus
     
    Klaus B aus D, 22. Januar 2014
    #15
Thema:

Sortierreihenfolge in Abfrage bei drei Feldern

Die Seite wird geladen...
  1. Sortierreihenfolge in Abfrage bei drei Feldern - Similar Threads - Sortierreihenfolge Abfrage Feldern

  2. Abfrage: Anzahl von Kriterium >0

    in Microsoft Access Hilfe
    Abfrage: Anzahl von Kriterium >0: Hallo, [ATTACH] Ich versuche gerade, die Anzahl der belegten Plätze auf einem LKW per Abfrage zu ermitteln. Dabei wäre dann FSPal > 0. Leider zeigt er mir die Anzahl der Plätze an. [ATTACH]...
  3. Teil des Zellinhaltes abfragen in VBA

    in Microsoft Excel Hilfe
    Teil des Zellinhaltes abfragen in VBA: Guten Tag, ich möchte in Zelle E1 den linken 4-stelligen Teil in Zelle A3 abfragen. Habs versucht mit IF (LEFT(R[2]C[-3],4) = "8396") then ... Else ... End If Wer kann...
  4. Verliert irgendwann die Selektive Abfrage von UFO

    in Microsoft Access Hilfe
    Verliert irgendwann die Selektive Abfrage von UFO: Guten Tag Ich habe ein HF mit darin befindlichem UF. Die Abfrage der Teilnehmer im Uf bezieht sich immer auf den Kurs-Typ im HF Solang ich das Formular neu erstelle, funktioniert das...
  5. Sortierreihenfolge DIN 5007

    in Microsoft Excel Hilfe
    Sortierreihenfolge DIN 5007: Ich habe eine umfangreiche Namensliste (über 11000 Zeilen) in Excel2000 erstellt und möchte die Daten nach dem Alphabet sortieren. Allerdings möchte ich dafür nicht die amerikanische...
  6. Speichern einer Sortierreihenfolge mit einer Tabelle, einer Abfrage, einem Formular oder einem ...

    in Microsoft Access Tutorials
    Speichern einer Sortierreihenfolge mit einer Tabelle, einer Abfrage, einem Formular oder einem ...: Speichern einer Sortierreihenfolge mit einer Tabelle, einer Abfrage, einem Formular oder einem Bericht Access für Microsoft 365 Access 2019 Access 2016 Access 2013...
  7. SortOrder-Eigenschaft (Sortierreihenfolge)

    in Microsoft Access Tutorials
    SortOrder-Eigenschaft (Sortierreihenfolge): SortOrder-Eigenschaft (Sortierreihenfolge) Access für Microsoft 365 Access 2019 Access 2016 Access 2013 Access 2010 Access 2007 Mehr......
  8. Sortierreihenfolge bei Parameterabfragen

    in Microsoft Access Hilfe
    Sortierreihenfolge bei Parameterabfragen: Wie kann ich erreichen, dass bei Parameterabfragen die Zahlen 10,11,12, usw, nicht als niedriger angesehen werden als die Zahlen 2,3,4... (hier handelt es sich wohl um eine alphabetische...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden