Avatar billede Søren Bech Morsing Praktikant
09. september 2003 - 20:49 Der er 8 kommentarer og
1 løsning

GROUP BY og samtidig få at vide om et felt er udfyldt

Har en tabel med nogle størrelser i
Jeg har brug for at gruppere pr [style]/[dessin], men samtidig få at vide om der står noget i mit felt [length]

Jeg kan jo ikke bruge [length] i min group by - får den variere pr. linie.

Er det muligt? returnere true/false
feltets værdi er tekst!
Avatar billede gertnissen Nybegynder
09. september 2003 - 20:51 #1
du kan bruge having som where på din group by
Avatar billede Søren Bech Morsing Praktikant
09. september 2003 - 21:57 #2
eks tak?

Min sql
SELECT p.style, p.dessin FROM produktionslinier p GROUP BY p.style, p.dessin
Kender ikke having (er måske ikke lige så avanceret ud i SQL når det kommer til stykket)
Avatar billede gertnissen Nybegynder
10. september 2003 - 00:24 #3
måske
SELECT p.style, p.dessin FROM produktionslinier p GROUP BY p.style, p.dessin having p.length not null

Having er blot en 'where' der kører på group by niveau
Avatar billede Søren Bech Morsing Praktikant
10. september 2003 - 08:09 #4
jo men så får jeg jo kun de udfald hvor lengt er udfyldt. jeg vil ha alle, men gerne true/false for om den er udfyldt
Avatar billede nva Praktikant
10. september 2003 - 08:25 #5
eks tak?

Måske noget i den stil :

SELECT LENGTH(p.length) as lengde,
        p.style as style,
        p.dessin as dessin
FROM produktionslinier p GROUP BY p.style, p.dessin
Avatar billede teepee Nybegynder
10. september 2003 - 08:52 #6
SELECT decode(LENGTH(p.length),0,0,1) as udfyldt,
        p.style as style,
        p.dessin as dessin
FROM produktionslinier p GROUP BY p.style, p.dessin, decode(LENGTH(p.length),0,0,1)
Avatar billede coily Nybegynder
12. september 2003 - 14:02 #7
teepee: din virker ikke hvis strengen er tom for så er length = NULL

SELECT
  decode(p.length,NULL,0,1) udfyldt,
  p.style as style,
  p.dessin as dessin
FROM produktionslinier p GROUP BY p.style, p.dessin, decode(p.length,NULL,0,1)
Avatar billede genvej Nybegynder
19. november 2003 - 13:34 #8
jeg ville bruge en case
select p.style
CASE WHEN  (length(p.length>0)) THEN 0 ELSE 1 END )length
get the point??
Avatar billede Søren Bech Morsing Praktikant
19. november 2003 - 14:12 #9
tak genvej, det var lige det jeg ville vide, har aldrig arbejdet med det, men jeg finder et eksempel hvis ovenstående ikke er ok
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
Computerworld tilbyder specialiserede kurser i database-management

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