[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Nov 2006
    Beiträge
    60

    Sortierung CCSID 273

    Hallo Zusammen!

    Ich habe ein Problem mit einer Sortierung von Umlauten in einer PF und hoffe ich finde hier die Antwort: "Warum die Sortierung sich ändert"

    CCSID der PF ist 273
    Feld innerhalb diese PF ist char(30) ebenfalls CCSID 273, Feld mit Groß/Kleinschreibung gefüllt.

    Ich möchte die ersten 4 Stellen dieses Feldes aufsteigend sortieren.

    wenn ich die Abfrage wie folgt ausführe, ist die Sortierung korrekt

    Code:
     
    SELECT substr((FELD), 1, 4) FROM MY_TABLE GROUP 
    BY substr((FELD), 1, 4) ORDER BY substr((FELD), 1, 4)
    Ergebnis
    "Scha" steht vor "Schü"

    ergänze ich die Abfrage um den Wert UPPER, stimmt das Ergebnis nicht mehr

    Code:
     
    SELECT substr(upper(FELD), 1, 4) FROM MY_TABLE GROUP 
    BY substr(upper(FELD), 1, 4) ORDER BY substr(upper(FELD), 1, 4)
    Ergebnis
    "SCHÜ" steht vor "SCHA"

    Kann mir jemand vllt etwas Laienhaft erklären wieso dieses so ist?

    Vielen Dank im Voraus

  2. #2
    Registriert seit
    Jun 2001
    Beiträge
    2.044
    Ü = Hex 5a

    A = Hex C1

    also ist Ü < A


    ach so, ü ist hex D0 und somit größer als a = Hex 81


    Robi

    * es gibt aber die möglichkeit eine sortierung anzusprechen die gr.Kl. gleich behandelt.
    Wenn morgen die Kiste wieder an ist, schau ich das mal nach
    Last edited by Robi; 24-09-12 at 17:04. Grund: warum es klein funktioniert
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

  3. #3
    Registriert seit
    Aug 2003
    Beiträge
    1.508
    Wenn SRTSEQ=*HEX angegeben ist, wird nach Hex-Wert sortiert. Wie Robi schon geschrieben hat hängt die Sortierung dadurch nach der Reihnfolge der Hex-Werte ab.

    Du kannst aber auch z.b. SRTSEQ=*LANGIDUNQ benützen. Damit ist dann die Sortierung in beiden Fällen wieder identisch.

    lg Andreas

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    In diesem Fall sollte man beim Order aber dann die Mätzchen mit SUBSTR und UPPER lassen, da diese Sortierung Groß/Kleinschreibung ignoriert und Upper dann unnötig ist!
    Auch ein Index wäre dann ganz hilfreich so dass das dann schneller geht.

    Desweiteren ist zu beachten dass die Sortierung nach Sprache das "Ü" nun nach dem "U" sortiert genauso wie "Ä" dann direkt nach "A" kommt, genauso wia alle anderen Sonderzeichen wie z.b. é, è usw.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  5. #5
    Registriert seit
    Jun 2001
    Beiträge
    2.044
    unsere Lösung für Gr./Kl. identisch ist so

    Code:
                                                                                    
    .A..........A.Name++++++.LängeDDsF......Funktionen++++++++++++++++++++++++++ ...
    ************* Datenanfang ******************************************************
     A                                      ALTSEQ(*LIBL/QSRTSTVNUM)                
      *                       SORT: GROß=KLEISCHREIBUNG + * NACH HINTEN (C5 <=> FF) 
     A          R SAVO3                     PFILE(VO3M1)                            
     A          K VO3020                                                            
     A          K VO3006                                                            
     A          K VO3029                                                            
     A          K VO3007
    Das ist schon EWIG bei uns so, das mit dem
    SRTSEQ=*LANGIDUNQ
    kenn ich zwar, weis aber nicht ob es hierzu einen Unterschied gibt.

    und ..., wie Baldur schon geschrieben hat ... den UPPER dann weglassen !!!

    Robi
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

  6. #6
    Registriert seit
    May 2002
    Beiträge
    1.121
    Hallo Robi,

    kann es sein, dass die QSRTSTVNUM etwas hauseigenes bei euch ist ?
    Habe jetzt auf allen mir zugänglichen Maschienen (10 Stück) geschaut. Dort habe ich nirgens ein Objekt QSRTSTVNUM gefunden.

    Gruß
    Ronald

  7. #7
    Registriert seit
    Jan 2007
    Beiträge
    1.002
    Hi Ronald,

    Denke das wirst Du auch nicht finden. Ein Schelm der eigene Definitionen mit Q... Objekte erstellt. ;-)

    Habe selber auch solche Tabellen, allerdings mit einem eindeutigen Naming.
    kf

  8. #8
    Registriert seit
    Jun 2001
    Beiträge
    2.044
    Huch ...
    <.ALTe-Denke>
    das Ding heist Q und kommt deshalb von IBM.


    <.NEUe-Denke>
    Da die *TBL ausschließlich in der Anwendungslib steht hat der Erfinder wohl nur einen unglücklichen Namen gewählt.
    Die Tabelle ist tatsächlich "Hausintern" und es gab sie schon lange vor meiner Zeit.


    ... wieder was gelernt

    Robi
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

  9. #9
    Registriert seit
    May 2002
    Beiträge
    1.121
    dann kannst du uns ja eventuell mit einem
    RTVTBLSRC
    glücklich machen..?!?!?

  10. #10
    Registriert seit
    Jun 2001
    Beiträge
    2.044

    wenn's schee macht

    Code:
    000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F 
    202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F 
    404142434445464748494A4B4C4D4E4F505152535455565758595A5BFF5D5E5F 
    606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F 
    80C1C2C3C4C5C6C7C8C98A8B8C8D8E8F90D1D2D3D4D5D6D7D8D99A9B9C9D9E9F 
    A0A1E2E3E4E5E6E7E8E9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBF 
    C0C1C2C3C4C5C6C7C8C9CACBCCCDCECFD0D1D2D3D4D5D6D7D8D9DADBDCDDDEDF 
    E0E1E2E3E4E5E6E7E8E9EAEBECEDEEEFF0F1F2F3F4F5F6F7F8F9FAFBFCFDFE5C
    es gibt sogar ne Source
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

Similar Threads

  1. Konvertierung nach Graphic --> CCSID Problem
    By codierknecht in forum NEWSboard SAP
    Antworten: 32
    Letzter Beitrag: 09-02-18, 13:00
  2. Antworten: 4
    Letzter Beitrag: 01-10-13, 09:38
  3. Nachricht CPF427D bei CCSID 870 (ohne €) und 1153 (mit €)
    By edv90020 in forum NEWSboard Programmierung
    Antworten: 5
    Letzter Beitrag: 06-04-11, 09:33
  4. Zeichenumsetzung zwischen CCSID 273 und CCSID 8612 ungültig
    By schatte in forum NEWSboard Programmierung
    Antworten: 5
    Letzter Beitrag: 08-02-11, 17:36
  5. CCSID eines Files
    By Binford in forum IBM i Hauptforum
    Antworten: 6
    Letzter Beitrag: 07-03-06, 08:58

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •