Avatar billede razmataz Nybegynder
31. oktober 2005 - 21:03 Der er 11 kommentarer og
1 løsning

Sammentælning af poster

Hvordan tæller man det antal af poster der dukker op i et DBGrid som resultat af en SQL query?
Avatar billede stoney Nybegynder
31. oktober 2005 - 21:21 #1
enten via sql
http://www.w3schools.com/sql/sql_functions.asp

eller alt efter hvad du bruger har dit recordset en"property"

eks adoquery1.recordcount

Stoney
Avatar billede razmataz Nybegynder
31. oktober 2005 - 21:25 #2
Øøøh... jeg er ikke med ... ADOQuery1.recordcount findes ikke i min delphi.. måske er det noget nyt? Jeg har delphi 6.
Og hvordan foreslår du lige at man bruger SQL til at tælle de antal af fundne poster man har som resultat??
Avatar billede razmataz Nybegynder
31. oktober 2005 - 21:26 #3
Det er måske lettere hvis jeg bare siger hvad jeg egentlig skal bruge.

Jeg skal bruge en rutine der kan flytte de fundne poster fra en SQL søgning over i en Combobox.
Avatar billede stone Forsker
31. oktober 2005 - 21:36 #4
brug en ekstra TQuery og skriv i din sql

Select Sum (theFieldName) From theTableName

ikke testet....
Avatar billede stoney Nybegynder
31. oktober 2005 - 21:36 #5
jeg gik ud fra du brugte adoquery.

Du skal løbe dit recordset igennem og add hver post til comboox'en

while not dit_recordset.eof
combobox.items.add(dit feltnavns data)
next

nogenunde sådan
har ikke delphi lige her

Stoney
Avatar billede stoney Nybegynder
31. oktober 2005 - 21:39 #6
http://delphi.about.com/od/database/l/aa040301b.htm

her løber du igennem et recordset

Stoney
Avatar billede razmataz Nybegynder
01. november 2005 - 16:29 #7
Jeg kan simpelthen ikke få det til at virke.
Kan du om muligt komme med en hel kode til at gøre det med, jeg bruger ADOQuery1 som er linket til DBGrid1, og alle felterne som fremkommer ud fra søgningen "SELECT * FROM medlemmer WHERE klub<> NULL" skal indsættes i Combobox1.
Avatar billede stoney Nybegynder
01. november 2005 - 21:39 #8
Efter du har kørt din query kan du løbe dit recordset igennem som nedenstående.
Det er testet
Ellers læg en mail adr og jeg sender dig eksemplet

while not adoquery1.Eof do begin
    if adoquery1.FieldByName('klub').AsString <> '' then
      begin
      combobox1.Items.Add(adoquery1.fieldbyname('navn').AsString);
      end;
  adoquery1.Next;

Stoney
Avatar billede razmataz Nybegynder
02. november 2005 - 12:10 #9
Jeps, det virkede! :)
Takker. Er der så en let måde at undgå at det samme navn står der 2 gange?
Avatar billede razmataz Nybegynder
02. november 2005 - 12:11 #10
Eller, findes der en SQL der ikke returnerer den samme værdi flere gange hvis den står i flere poster?
Avatar billede razmataz Nybegynder
02. november 2005 - 12:59 #11
NM, klarede det selv.
Stoney, svar tak :)
Avatar billede stoney Nybegynder
02. november 2005 - 14:20 #12
:-)

Stoney
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester