![]() |
QUERY - Spalte einer Tabelle leer?
Hallo,
angenommen ich habe eine Tabelle mit 3 Spalten: Wie kann ich möglichst einfach feststellen ob eine gesamte Spalte der Tabelle leer ist (WERT NIL bzw. NULL)? Über Hilfe würde ich mich freuen :) Ciao, Christian |
Re: QUERY - Spalte einer Tabelle leer?
Hallo trialfreak,
probiere es mal so:
SQL-Code:
SELECT *
FROM Customer WHERE (InvoiceDate IS NULL); |
Re: QUERY - Spalte einer Tabelle leer?
Hallo,
danke für Deine Antwort :) Habe leider vergessen zu erwähnen, dass mit Tabelle die Rückgabe eines komplexeren Queries gemeint ist, welches mit Hilfe temporärer Tabellen das Fehlen von "SubSelects" unter mySQL ausmerzen soll. Die Ergebnisse werden also zunächst in eine temporäre Tabelle geschrieben, die dann ganz normal mit SELECT * from temp_table ausgelesen wird. Die Rückgabe des Queries könnte dann z.B. so aussehen (Werte sind nur zur Veranschaulichung): SPALTE1 - SPALTE2 - SPALTE3 dsfsdfs - ewrewrw - jhjf ffdfeee - ewewewe - dsfwe - weewe - dfd oder so: SPALTE1 - SPALTE2 - SPALTE3 dsdsads - asdasda - asdasdd - sddeeff - (Blöde Darstellung, sorry) Ich möchte nun unter Delphi gucken, ob die gesamte 3. Spalte der Ergebnismenge leer ist. Falls ich mich blöd ausgedrückt habe, kann ich das gerne nochmal näher erläutern... |
Re: QUERY - Spalte einer Tabelle leer?
SQL-Code:
Bekommst du 0 als Ergebnis ist die Spalte leer.
SELECT Count(*)
FROM Tabelle WHERE (...Deine Where-Clause) AND Spalte is not null |
Re: QUERY - Spalte einer Tabelle leer?
Hallo,
nach Möglichkeit möchte ich für diese Aufgabe keinen neuen Query stellen. Kann man da nicht analog was zu query.fieldvalues['NameDesEinzelfeldes'] oder so machen, ohne eine neue Anfrage an den Server stellen zu müssen? Die Ergebnismenge ist ja schon im Rechner... |
Re: QUERY - Spalte einer Tabelle leer?
Zitat:
|
Re: QUERY - Spalte einer Tabelle leer?
Hallo,
ich denke auch dass dies dann die einzige Möglichkeit sein wird. Die Ergebnismenge an sich ist maximal nur 10 Datensätze groß, da es um statistische Zusammenfassungen geht. Trotzdem Danke für eure Anregungen :) - echt super hier... :dp: |
Re: QUERY - Spalte einer Tabelle leer?
So, vielleicht braucht es ja noch jemand anderes, hier ist die Prozedur die ich mir geschrieben habe :)
Delphi-Quellcode:
Ist die Spalte leer ist der Rückgabewert true, ansonsten false...
function spalteempty (query : TQuery; spalte : string) : boolean;
begin Result := true; query.First; if not (query.FieldByName(spalte).AsString='') then Result := false; repeat begin query.Next; if not (query.FieldByName(spalte).AsString='') then Result := false; end; until query.Eof; end; |
Re: QUERY - Spalte einer Tabelle leer?
Warum nicht so?
Delphi-Quellcode:
Und warum schreibst Du die if-Abfrage zweimal in Deinen Code?
if not query.FieldByName(spalte).IsNull then Result := false;
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:20 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz