Avatar billede william_munny Nybegynder
02. april 2004 - 11:34 Der er 3 kommentarer og
2 løsninger

Tjekke om der er ens navne i SQL

Hej eksperter
Vil gerne lave et udtræk fra min Oracle database i SQL.
Min forespøgsel skal returnere alle de "alias" som ikke er unikke altså duplikate. jeg prøver følgende:

SELECT SAMPLE.ALIAS,COUNT(SAMPLE.ALIAS) as "number of duplicates "
FROM SAMPLE
WHERE SAMPLE.PROJECT_ID = 'test'
GROUP BY SAMPLE.ALIAS
HAVING COUNT(SAMPLE.ALIAS)>1

Dette giver mig fint nok et resultat tilbage.
Problemet er at hvis jeg gerne vil selecte flere kolonner så vælger den ingenting eks.

SELECT SAMPLE.ALIAS,SAMPLE.PROJECT_ID,COUNT(SAMPLE.ALIAS) as "number of duplicates "
FROM SAMPLE
WHERE SAMPLE.PROJECT_ID = 'test'
GROUP BY SAMPLE.ALIAS,SAMPLE.PROJECT_ID
HAVING COUNT(SAMPLE.ALIAS)>1

Hvad kan problemet være ?
Avatar billede teepee Nybegynder
02. april 2004 - 12:07 #1
hvis dine rækker er på forskellige project_id's så summerer de jo til 1 og er derfor udelukket af din HAVING. Prøv at fjerne dine HAVING og se om de dukker op som 1'ere.
Avatar billede william_munny Nybegynder
02. april 2004 - 12:24 #2
Det gør de men jeg vil jo gerne have dem som er større end 1 sorteret fra.. ?
Avatar billede william_munny Nybegynder
02. april 2004 - 12:30 #3
Er der en anden måde man kan gøre det på ? kan man lave et join eller noget i den stil ?
Avatar billede teepee Nybegynder
02. april 2004 - 12:49 #4
Måske kan du selecte:

select [hvad du vil]
from sample
where alias in (
SELECT SAMPLE.ALIAS
FROM SAMPLE
WHERE SAMPLE.PROJECT_ID = 'test'
GROUP BY SAMPLE.ALIAS,SAMPLE.PROJECT_ID
HAVING COUNT(SAMPLE.ALIAS)>1)
order by alias

Du får jo altså så "dublet" aliaser, med al deres tilhørende info.
Avatar billede william_munny Nybegynder
02. april 2004 - 13:02 #5
Du er sgu en helt teepee mange tak for hjælpen. :-)
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