Avatar billede mccookie Seniormester
22. januar 2011 - 18:37 Der er 6 kommentarer og
1 løsning

Sql streng

Hejsa

Jeg laver denne sql først:

select cardno, count(laundryauditcode) as L into test2 from tenant where laundryaudticode = 0 group by cardno order by L DESC;

Det laver en ny tabel med 2 kolonner: cardno, L
L er antallet gange et kort er oprettet...

Herefter kan jeg så se hvilke kort der er oprettet 2 gange....

Men kunne jeg ikke gøre det lidt smartere?? Således at istedet for at oprette en temp-tabel, kunne lave opslaget i en og samme forespørgelse.....??
Avatar billede arne_v Ekspert
22. januar 2011 - 18:44 #1
select cardno, count(laundryauditcode) as L into test2 from tenant where laundryaudticode = 0 group by cardno having L >= 2

måske
Avatar billede mccookie Seniormester
22. januar 2011 - 18:55 #2
Hmm..... ok... men jeg kunne så godt tænke mig at trække en kolonne mere med over.....
Avatar billede arne_v Ekspert
22. januar 2011 - 20:13 #3
Men hvis der for en værdi af cardno er flere værdier i den kolonne, hvad vil du så have?
Avatar billede mccookie Seniormester
23. januar 2011 - 08:58 #4
Hej Arne

Jeg har løst det sådan i første omgang:

SELECT cardno, count(laundryauditcode) as l into temptable from tenant where laundryauditcode = 0 group by cardno having count(laundryauditcode) >= 2;

SELECT tenant.id, tenant.cardno, laundryauditcode as auth from tenant, temptable where tenant.cardno = temptable.cardno order by cardno, id;

Men naturligvis ville jeg gerne koge det hele ned til een streng, således at der ikke nødvendigvis skal laves en temp.table.....

///Henning
Avatar billede arne_v Ekspert
23. januar 2011 - 14:18 #5
prøv med:

SELECT id,cardno,laundryauditcode
FROM tenant
WHERE cardno IN (SELECT cardno FROM tenant WHERE laundryauditcode = 0 GROUP BY cardno HAVING COUNT(laundryauditcode) >= 2)
ORDER BY cardno,id
Avatar billede mccookie Seniormester
23. januar 2011 - 19:16 #6
Helt perfekt......

Den sætning har jeg dog været utroligt tæt på, havde bare valgt at søge på et andet kriterie :o)

smid et svar
Avatar billede arne_v Ekspert
23. januar 2011 - 19:22 #7
svar
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