|
| sql problem Fra : stjernekasteren | Vist : 509 gange 200 point Dato : 06-10-04 13:31 |
|
Hejsan.
Jeg har lidt problemer med opbygningen af et SQL statement. Jeg har en tabel med en account kolonne og en parent kolonne.
Det jeg skal søge efter i mit sql er de rækker hvor account ikke findes i nogen som helst parent.
Det vil sige at jeg vil finde alle accounts der ikke er parent, og derved finde antallet af børn (childs) i min tabel.
Nogen sql haj der vil hjælpe mig med opbygningen?
| |
|
Skal lige forstå det rigtig du har en kolone, du vil gerne finde ud af hvor mange der er Childs i din dabase?
| |
|
Opbygning:
| account | parent |
1 4
2 4
3 4
4 x etc...
Det sql jeg skal bruge skal gå ind og vælge de accounts der IKKE er parents. I det her tilfælde ville det være account 1, 2 og 3.
| |
| Kommentar Fra : rfh |
Dato : 06-10-04 15:39 |
|
Det skulle være noget i den her retning
Kode SELECT * FROM tabelnavn WHERE parent != '4' |
Hvis du vil fravælge mere end 1 værdi på 'parent' så kan du gøre det på denne her måde
(4 og 2 fravælges)
Kode SELECT * FROM tabelnavn WHERE parent != '4' AND parent != '2' |
mvh
rfh
| |
|
Hehehe. Ovenstående var et eksempel. Den rigtige tabel har ca. 30.000 medlemmer og et virvar i parent opbygningen.
Jeg har selv fået strikket koden sammen så jeg kan få talt mine parents, så der er ikke nogle problemer længere ;)
| |
|
Jeg forstår godt hvor du vil hen har også prøvet og tænke lidt over den men er deværre ikke kommet på en løsning.
Vil nok forslå dig at du opretter et post på:
http://activedeveloper.dk/forum/forum.asp
De er flinke til og hjælpe der inde, der for jeg meget hjælp.
Men held og lykke med det.
| |
|
Det er en simpel "difference"-sætning du skal lave:
select *
from tabelnavn as t1
where not exists(select * from tabelnavn as t2 where t1.account = t2.parent)
hilsen
cld
| |
| Du har følgende muligheder | |
|
Dette spørgsmål er blevet annulleret, det er derfor ikke muligt for at tilføje flere kommentarer.
| |
|
|