| 
	
	
		
		
	 
	
	
		
			
	
	
		
		
		
		
			Satzzähler im Query
		
			
				
					Hallo,
 ich habe eine Queryauswertung; wenn ich diese auf dem Bildschirm anzeigen lasse, habe ich natürlich am linken Rand die Anzahl der Zeilen.
 Da ich das Query aber drucken möchte und auch dort die Anzahl der Datensätze (Gruppenwechsel) brauche, würde ich gerne wissen, ob das funktioniert.
 
 Evtl. mit Ergebnisfeld ?
 
 Danke schonmal
 Mädele
 
	
	
		
		
		
				
				
		
			
				
					Nein, das gibt es nicht, da Query die Zeilen nur bei der Anzeige darstellt. Wenn Gruppenwechsel verwendet sind, werden diese Zeilen und die Leerzeilen sogar mitgezählt. Die Zeile dient einfach nur der Positionierbarkeit.
 Aber was hat die Anzahl Sätze mit Gruppenwechsel zu tun ?
 
 Im Gruppenwechsel kannst du die Funktion "Anzahl" auswählen !
 Dann bekommst du die Anzahl Sätze der jeweiligen Gruppenebene.
 
	
	
		
		
		
				
				
		
			
				
					Naja,
 gehtNeddGibbdsNedd!
 zumindest im SQL geht das, einmal auf die teure Art und Weise mit einem Subselect und count(*) und eleganter mit einer Function, die hochzählt und im Query käme man da über eine SQL View auch dran. Da habe ich auch mal ein paar Anmerkungen im Midrange Magazin im Technik Forum gemacht.
 
 mfg
 
 Dieter Bender
 
 
 
	
		
			
			
				
					  Zitat von Fuerchau Nein, das gibt es nicht, da Query die Zeilen nur bei der Anzeige darstellt. Wenn Gruppenwechsel verwendet sind, werden diese Zeilen und die Leerzeilen sogar mitgezählt. Die Zeile dient einfach nur der Positionierbarkeit.
 Aber was hat die Anzahl Sätze mit Gruppenwechsel zu tun ?
 
 Im Gruppenwechsel kannst du die Funktion "Anzahl" auswählen !
 Dann bekommst du die Anzahl Sätze der jeweiligen Gruppenebene.
 
	
	
		
		
		
				
				
		
			
				
					@Dieter1. es ging um Query und nicht um SQL
 2. wie löst du die Leerzeilen und die Gruppenwechselzeilen der Query-Anzeige ?
 
 Meines Wissens nach ist SQL eben kein Reportgenerator wie Query, der mir auch noch die Zwischenergebnisse der jeweiligen Gruppenstufe sowie das Endergebnis in eigenen Zeilen liefert.
 
	
	
		
		
		
				
				
		
			
				
					
	Wie Dieter schon sagte "Geht net gibt's net". Auch Gruppenwechsel sind in SQL möglich, nämlich in dem man für jede Gruppenstufe einen eigenen Select bildet und diese dann über UNION zusammenbastelt. Das einzige Problem ist dann die Sortierung, d.h. dass die Zwischensummen korrekt einsortiert werden.
		
			
			
				
					  Zitat von Fuerchau  Wie löst du die Gruppenwechselzeilen der Query-Anzeige ?
 Meines Wissens nach ist SQL eben kein Reportgenerator wie Query, der mir auch noch die Zwischenergebnisse der jeweiligen Gruppenstufe sowie das Endergebnis in eigenen Zeilen liefert.
 Aber auch das ist zu realisieren.
 
 Birgitta
 
	
	
		
		
		
				
				
		
			
				
					Ja ok:
 select Key1, Key2, Key3, sum(f1)
 from myfile
 where ...
 group by Key1, Key2, Key3
 union
 select Key1, Key2, max(x'ff'), sum(f1)
 from myfile
 where ...
 group by Key1, Key2
 union
 select Key1, max(x'ff'), max(x'ff'), sum(f1)
 from myfile
 where ...
 group by Key1
 union
 select max(x'ff'), max(x'ff'), max(x'ff'), sum(f1)
 from myfile
 where ...
 order by 1, 2, 3
 
	
	
		
		
		
				
				
		
			
				
					
	@Baldur
		
			
			
				
					  Zitat von Fuerchau @Dieter1. es ging um Query und nicht um SQL
 2. wie löst du die Leerzeilen und die Gruppenwechselzeilen der Query-Anzeige ?
 
 Meines Wissens nach ist SQL eben kein Reportgenerator wie Query, der mir auch noch die Zwischenergebnisse der jeweiligen Gruppenstufe sowie das Endergebnis in eigenen Zeilen liefert.
 
 www.fielmann.de hilft hier weiter:
 siehe das OP von mir:
 
 
	soweit ich mich erinnere, kann man Functions sogar im Query direkt benutzen, habe gerade keine Büchse zum ausprobieren oben.
		
			
			
				
					  Zitat von BenderD  im Query käme man da über eine SQL View auch dran 
 mfg
 
 Dieter
 
	
	
		
		
		
				
				
					
				
		
			
				
					@DieterDa muss ich dich leider enttäuschen. Wenn das ginge, würde ich nicht so viel QM-Queries brauchen. Die Hilfe auf dem Ausdruck-Feld beschreibt genau, welchen "Funktionen" erlaubt sind und das sind zur Zeit "SUBSTR, CHAR, DIGITS, VALUE, DATE, DAY, HOUR, MINUTE, SECOND, MICROSECOND, TIME, TIMESTAMP, MONTH, YEAR, CURRENT(DATE, TIME, TIMESTAMP)".
 
 Ausserdem, was nützt mir eine Funktion mit Fortschreibung (über Scratchpad), wenn der ORDER BY erst hinterher läuft und somit eine ggf. fortlaufende Nr. nicht gewährleistet ist ?
 Naja, man könnte ja auch hier mit einem Subselect arbeiten, allerdings erlaubt ein Subselect wiederum kein Union und ich die Satznummer erst NACH dem Sort vergeben muss.
 
 
	
	
 
	
	
	
		Similar Threads
			
			
  
    
    
       By Kaufmann in forum IBM i Hauptforum
     
    Antworten: 1
       
        Letzter Beitrag: 15-12-06, 09:45
      
  
    
    
       By Kaufmann in forum IBM i Hauptforum
     
    Antworten: 6
       
        Letzter Beitrag: 29-11-06, 19:07
      
  
    
    
       By Azubiiiiii in forum IBM i Hauptforum
     
    Antworten: 6
       
        Letzter Beitrag: 03-08-06, 10:44
      
  
    
    
       By dino in forum IBM i Hauptforum
     
    Antworten: 1
       
        Letzter Beitrag: 09-05-06, 08:45
      
  
    
    
       By Hubert Brethauer in forum IBM i Hauptforum
     
    Antworten: 6
       
        Letzter Beitrag: 05-05-06, 13:37
       
		
		
		
		
			
				 Berechtigungen
				
	
		Neue Themen erstellen: NeinThemen beantworten: NeinYou may not post attachmentsYou may not edit your posts  Foren-Regeln 
  
  
 
 
 | 
Erweiterte Foren SucheGoogle Foren SucheForum & Artikel Update eMail
AS/400 / IBM iServer Expert GruppenUnternehmens IT
 
 | 
Kategorien online Artikel
Big Data, Analytics, BI, MISCloud, Social Media, DevicesDMS, Archivierung, DruckERP + Add-ons, Business SoftwareHochverfügbarkeitHuman Resources, PersonalIBM AnnouncementsIT-KarikaturenLeitartikelLoad`n`goMessen, VeranstaltungenNEWSolutions DossiersProgrammierungSecuritySoftware Development + Change Mgmt.Solutions & ProviderSpeicher – StorageStrategische BerichteSystemmanagementTools, Hot-Tips Auf dem Laufenden bleiben | 
Bookmarks