Avatar billede sbay Nybegynder
16. juni 2009 - 10:43 Der er 5 kommentarer og
1 løsning

Select statement

Hejsa

Jeg skal lave et udtræk af delvarer, der bruges til en vare. Men mit resultat skal kun bestå af delvarer der bruges i mere end én vare. I tabellen er der en record for hver delvare:

Vare 1, Delvare 34
Vare 1, Delvare 56
...

Resultat skal være ca:

Delvare 1 bruges i:
  Vare 34
  Vare 48

Delvare 5 bruges i:
  Vare 67
  Vare 90
  Vare 91

Hvordan gøres det?

Select Vare, Delvare From Tabel, giver mig alle forekomster af delvare, men jeg vil som sagt kun have dem der optræder mere end en gang...
Avatar billede arne_v Ekspert
16. juni 2009 - 11:32 #1
SELECT vare,delvare FROM tabel WHERE delvare IN (SELECT delvare FROM (SELECT delvare,COUNT(*) FROM tabel GROUP BY delvare HAVING COUNT(*) > 1) x) y)

maaske
Avatar billede arne_v Ekspert
04. august 2009 - 03:46 #2
OK ?
Avatar billede sbay Nybegynder
04. august 2009 - 09:54 #3
Det virker på MSSQL, men ikke på AS400 DB2, hvor jeg skulle bruge det :-(
Avatar billede sbay Nybegynder
04. august 2009 - 09:55 #4
men smid et svar - det er jo ikke din skyld :-)
Avatar billede arne_v Ekspert
04. august 2009 - 22:05 #5
Nu er jeg ikke nogen DB2 ørn, men jeg tror at du skal bruge WITH.

WITH
x AS (SELECT delvare,COUNT(*) FROM tabel GROUP BY delvare HAVING COUNT(*) > 1)
SELECT vare,delvare FROM tabel WHERE delvare IN (SELECT delvare FROM x)
Avatar billede arne_v Ekspert
04. august 2009 - 22:05 #6
og et svar (igen!)
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