![]() |
Datenbank: Firebird • Version: 1.5 • Zugriff über: ZEOS
Doppelte Werte aus Tabellenspalte nicht anzeigen??
Hallo zusammen,
ich möchte mir mit Hilfe einer Query die Werte aus einer Tabellenspalte anzeigen lassen, dabei sollen doppelte Einträge nicht angezeigt werden. Im Moment gehe ich noch so vor:
Delphi-Quellcode:
da ist aber halt das Problem, das die groß und klein Schreibung nicht beachtet wird, es wird also
ZQVeranstaltung.Close;
ZQVeranstaltung.SQL.Clear; ZQVeranstaltung.SQL.Text := 'SELECT DISTINCT vName FROM veranstaltung'; ZQVeranstaltung.Open; z.B. Rockkonzert und rockkonzert ausgegeben, es sollte halt nur eins der beiden berücksichtigt werden. Wie muss ich mein Statement erweitern um so was zu vermeiden? Gruß TankWart |
Re: Doppelte Werte aus Tabellenspalte nicht anzeigen??
SQL-Code:
SELECT DISTINCT UPPER(vName) FROM veranstaltung;
|
Re: Doppelte Werte aus Tabellenspalte nicht anzeigen??
Das Statment schluckt er so,
aber frage ich die Werte mit FieldByName nun ab, kommt die Meldung: Feld vName kann nicht gefunden werden.
Delphi-Quellcode:
Ich möchte so, eine Combobox mit Werten aus einer DB füllen, was mache ich da falsch,
ZQVeranstaltung.Close;
ZQVeranstaltung.SQL.Clear; ZQVeranstaltung.SQL.Text := 'SELECT DISTINCT UPPER(vName) from veranstaltung'; ZQVeranstaltung.Open; ZQVeranstaltung.First; if ZQVeranstaltung.RecordCount > 0 then begin while not ZQVeranstaltung.Eof do begin vName := ZQVeranstaltung.FieldByName('vName').AsString; cobxVerName.Items.Add(vName); ZQVeranstaltung.Next; end; end; bzw. wie geht man da am besten vor um die Box zu füllen. Gruß TankWart |
Re: Doppelte Werte aus Tabellenspalte nicht anzeigen??
hat er vielleicht ein problem mit der Variable vName
while not ZQVeranstaltung.Eof do begin **vName** := ZQVeranstaltung.FieldByName('vName').AsString; cobxVerName.Items.Add(vName); ZQVeranstaltung.Next; end; vielleicht so while not ZQVeranstaltung.Eof do begin cobxVerName.Items.Add(ZQVeranstaltung.FieldByName( 'vName').AsString); ZQVeranstaltung.Next; end; |
Re: Doppelte Werte aus Tabellenspalte nicht anzeigen??
SQL-Code:
SELECT DISTINCT UPPER(vName) as vname from veranstaltung;
|
Re: Doppelte Werte aus Tabellenspalte nicht anzeigen??
jep so klappt es:
Delphi-Quellcode:
Ist es jetz noch möglich, statt alle Buchstaben groß nur den ersten immer groß anzuzeigen?
SELECT DISTINCT UPPER(vName) as vname from veranstaltung;
Oder kann ich das irgenwie gleich mit meiner Select Abfrage machen? Danke schon mal im Voraus Gruß TankWart |
Re: Doppelte Werte aus Tabellenspalte nicht anzeigen??
Theroetisch ist sowas mit einer SQL-Abfrage möglich
SQL-Code:
select distinct (Upper(substring( vName from 1 for 1)) || lower(substring( vName from 2))) as vName, ...
|
Re: Doppelte Werte aus Tabellenspalte nicht anzeigen??
wie ist das mit den Punkten am Ende gemeint,
irgenwie bekomme ich das Statment nicht hin.
Delphi-Quellcode:
select distinct (Upper(substring( vName from 1 for 1)) || lower(substring( vName from 2))) as vName, ...
Dank mal wieder im Voraus |
Re: Doppelte Werte aus Tabellenspalte nicht anzeigen??
SQL-Code:
select distinct (Upper(substring( vName from 1 for 1)) || lower(substring( vName from 2))) as vName from veranstaltung;
|
Re: Doppelte Werte aus Tabellenspalte nicht anzeigen??
mhh, jetzt bringt er Function unknown Lower.
Hab echt keine Ahnung, erkennt jetzt die Funktion LOWER nicht im Statement. Gruß TankWart |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:55 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