AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Query auf "ohne Ergebnis" überprüfen
Thema durchsuchen
Ansicht
Themen-Optionen

Query auf "ohne Ergebnis" überprüfen

Ein Thema von PASST · begonnen am 31. Jan 2006 · letzter Beitrag vom 1. Feb 2006
Antwort Antwort
Seite 1 von 2  1 2      
PASST

Registriert seit: 30. Mär 2005
Ort: Krefeld
325 Beiträge
 
Delphi 7 Enterprise
 
#1

Query auf "ohne Ergebnis" überprüfen

  Alt 31. Jan 2006, 16:17
Datenbank: BDE • Version: 5.01 • Zugriff über: localSQL
Hi NG.

Delphi 4 (update 3)

Ich habe ein Query mit SUM und Group By erstellt. Jetzt kann es passieren, dass als Ergebnis keine Daten berechnet/summiert werden, aber das Query trotzdem eine Zeile allerdings mit Null-Werten als Ergebnis anzeigt.
Wie kann ich auf einfache Art und Weise überprüfen ob es sich um ein "NULL-Ergebnis" handelt.

Überprüfen auf BOF und EOF sowie RecordCount scheidet natürlich aus.

Gruß
Peter
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: Query auf "ohne Ergebnis" überprüfen

  Alt 31. Jan 2006, 16:34
Hi Peter,

nimm noch ein COUNT(*) AS RecordCount mit in deine Query auf.

Grüße vom marabu
  Mit Zitat antworten Zitat
PASST

Registriert seit: 30. Mär 2005
Ort: Krefeld
325 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Query auf "ohne Ergebnis" überprüfen

  Alt 31. Jan 2006, 16:41
Hallo marabu,

du meinst wohl, du bist ein ganz Schlauer. Mir mit den einfachsten Hinweisen zur Lösung zu verhelfen und mich als SQL-Depp hinzustellen.







Damit hast du Recht
Et klappt.
Danke
Peter
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#4

Re: Query auf "ohne Ergebnis" überprüfen

  Alt 31. Jan 2006, 17:15
Du kannst doch auch einfach das Feld abfragen:
If MyQuery.FieldByName('MySumField').IsNull Then ... [edit]Schwachsinnscode verbessert, dank PASST [/edit]
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
PASST

Registriert seit: 30. Mär 2005
Ort: Krefeld
325 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Query auf "ohne Ergebnis" überprüfen

  Alt 31. Jan 2006, 17:17
Die Eigenschaft SumField gibt es unter Delphi 4 nicht.
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#6

Re: Query auf "ohne Ergebnis" überprüfen

  Alt 31. Jan 2006, 17:21
In Delphi 6 auch nicht , Hupsa, sollte natürlich das persistente Feld sein. Ich korrigiere das.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
PASST

Registriert seit: 30. Mär 2005
Ort: Krefeld
325 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: Query auf "ohne Ergebnis" überprüfen

  Alt 31. Jan 2006, 17:27
Hm, das hört sich an und sieht dann natürlich nach einer praktikablen Lösung aus. Kann es denn den Fall geben, dass der Wert eines der Felder im Normalfall NULL annehmen kann, während die anderen Felder korrekt ausgefüllt werden?
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#8

Re: Query auf "ohne Ergebnis" überprüfen

  Alt 31. Jan 2006, 17:33
Ich denke wahrscheinlich zu kompliziert, aber meine Testdaten sahen so aus:

Code:
ID,ART_ID,MENGE,JAHR,MONAT
1,1,10,2005,1
2,1,20,2005,1
3,1,30,2005,2
4,1,40,2004,12
5,2,null,2006,1
SQL-Code:
select jahr, sum(menge) as summe, count(*) as recs
from umsatz
group by jahr
order by jahr
Das Ergebnis sieht dann so aus:
Code:
JAHR,SUMME,RECS
2004,40,1
2005,60,3
2006,null,1
marabu
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#9

Re: Query auf "ohne Ergebnis" überprüfen

  Alt 31. Jan 2006, 17:34
Kommt auf den Fall an. Eine Tabelle, in der in einer Spalte nur NULL-Wert stehen, in der anderen aber Zahlen, würde bei einer Summierung der Spalte2 natürlich NULL ergeben. Ich wollte nur mal zeigen, das man ein Feld auch auf NULL testen kann.

Im Prinzip würde ich auch marabus Lösung nehmen. Da der Server sowieso durch die Tabelle iterieren muss (wegen der Aggregate) kann er ohne Performanceverlust auch gleich mitzählen.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#10

Re: Query auf "ohne Ergebnis" überprüfen

  Alt 31. Jan 2006, 17:45
Hihi.

Im Trivialfall - eine Ergebniszeile und keine Anomalien in den Daten - nehme ich immer alzaimars Lösung.

marabu
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:27 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz