/ Forside / Teknologi / Udvikling / Perl / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Perl
#NavnPoint
bjarneA 141
poul_from 50
soccer 30
Nicknack 14
Tmpj 0
Oracle/dbi - GROUP BY
Fra : Peter Heinzl


Dato : 18-01-01 11:49

Jeg har et problem med "GROUP BY kategori"
Nedenstående virker fint uden "GROUP BY kategori"
Men altså ikke som her med:


$sth = $dbh->prepare(qq{
select
pakkenummer,overskrift1,overskrift2,pris,foto,tekst,kategori,ID,language
from tdkkatalog GROUP BY kategori
}) or die "Fejl... $dbh->errstr\n";


Peter



 
 
Thomas Eibner (18-01-2001)
Kommentar
Fra : Thomas Eibner


Dato : 18-01-01 14:59

Peter Heinzl wrote:
>
> Jeg har et problem med "GROUP BY kategori"
> Nedenstående virker fint uden "GROUP BY kategori"
> Men altså ikke som her med:
>
> $sth = $dbh->prepare(qq{
> select
> pakkenummer,overskrift1,overskrift2,pris,foto,tekst,kategori,ID,language
> from tdkkatalog GROUP BY kategori
> }) or die "Fejl... $dbh->errstr\n";

Det er ikke helt et perl spørgsmål det her, hører nærmere til ovre i
dk.edb.database.

Hvad er det egentlig du vil her? Vil du have dem ud i en bestemt
rækkefølge eller hvad?

Så vidt jeg husker bruges GROUP BY kun når der osse er en aggregate
funktion i din sql (såsom count, min, max, avg af en kolonne).

--
Thomas Eibner - <http://thomas.eibner.dk/>

Peter (18-01-2001)
Kommentar
Fra : Peter


Dato : 18-01-01 17:20


> Det er ikke helt et perl spørgsmål det her, hører nærmere til ovre i
> dk.edb.database.
God ide. det har jeg gjort

>
> Hvad er det egentlig du vil her? Vil du have dem ud i en bestemt
> rækkefølge eller hvad?
Formålet er at få en liste med kategorier (hvor hver enkelt kategori kun
optræder én gang selv om den ligger i eksempelvis 50 poster)
Jeg har kigget i oraclemaulalen og synnes selv jeg følger eksemplerne.
jeg har det samme problem med "where" (SELECT from ditten WHERE
datten='noget')

> Så vidt jeg husker bruges GROUP BY kun når der osse er en aggregate
> funktion i din sql (såsom count, min, max, avg af en kolonne).
Tak.............det vil jeg dykke ned i.

Peter



Thomas Eibner (19-01-2001)
Kommentar
Fra : Thomas Eibner


Dato : 19-01-01 09:23

Peter wrote:

> Formålet er at få en liste med kategorier (hvor hver enkelt kategori kun
> optræder én gang selv om den ligger i eksempelvis 50 poster)
> Jeg har kigget i oraclemaulalen og synnes selv jeg følger eksemplerne.
> jeg har det samme problem med "where" (SELECT from ditten WHERE
> datten='noget')

Jeg er ikke helt sikker på hvad det er du vil have, men her er et
eksempel på group by:

Hvis du vil vide hvor mange pakkenumre der er i hver kategori (fiktivt
eksempel da jeg ikke ved hvordan din tabel ser ud)

"select kategori, count(pakkenummer) from tdkkatalog group by kategori"

hvor resultatet ville blive: (igen fiktivt)

Kategori count(pakkenummer)

Kategori1 10
Kategori2 20

Var det lettere at forstå? Ellers må du prøve at fortælle hvad dit behov
er.

--
Thomas Eibner - <http://thomas.eibner.dk/>

Allan Olesen (19-01-2001)
Kommentar
Fra : Allan Olesen


Dato : 19-01-01 22:14

"Peter" <peter@cgi-shop.dk> wrote:

>Formålet er at få en liste med kategorier (hvor hver enkelt kategori kun
>optræder én gang selv om den ligger i eksempelvis 50 poster)

Findes der ikke en SELECT DISTINCT på sådan noget maskineri?


--
Allan Olesen, Lunderskov
Hvorfor er det kun Nej-sigerne, der må køre 55 i byen?

Thorbjørn Ravn Ander~ (19-01-2001)
Kommentar
Fra : Thorbjørn Ravn Ander~


Dato : 19-01-01 11:53

Peter Heinzl wrote:
>
> Jeg har et problem med "GROUP BY kategori"
> Nedenstående virker fint uden "GROUP BY kategori"
> Men altså ikke som her med:
>
> $sth = $dbh->prepare(qq{
> select
> pakkenummer,overskrift1,overskrift2,pris,foto,tekst,kategori,ID,language
> from tdkkatalog GROUP BY kategori
> }) or die "Fejl... $dbh->errstr\n";

Mener du ikke "ORDER BY" i stedet?

--
Thorbjørn Ravn Andersen "...sound of...Tubular Bells!"
http://bigfoot.com/~thunderbear

Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408938
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste