/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
[MySQL] Der må ingen rækker være med 'udsk~
Fra : Jonas Delfs


Dato : 08-06-01 19:40

Hej

Jeg har dette query:
SELECT o.polt_nr, k.id, k.navn, o.polt_nr FROM ordrer o, kunder k WHERE
status='KU' && o.kunde_id=k.id && udskrevet = 1 GROUP BY o.polt_nr

Det jeg vil med det er følgende, men eftersom MySQL ikke understøtter
sub-selects, vil jeg høre om der er nogen der har en idé til hvordan jeg så
gør:
SELECT o.polt_nr, k.id, k.navn, o.polt_nr FROM ordrer o, kunder k WHERE
status='KU' && o.kunde_id=k.id && '1' NOT IN(SELECT udskrevet FROM ordrer
WHERE kunde_id=k.id && polt_nr=o.polt_nr) GROUP BY o.polt_nr

Jeg er desuden ikke sikker på at det er den korrekte syntax for sub-selects
da det ikke er noget jeg beskæftiger mig meget med, men jeg håber du kan se
hvad jeg mener :)

På forhånd tak!


--
Mvh. Jonas Delfs, http://delfs.dk

"Rigtige mænd scorer på ICQ" - Christian Jørgensen



 
 
Jonas Delfs (09-06-2001)
Kommentar
Fra : Jonas Delfs


Dato : 09-06-01 15:52

"Jonas Delfs" <nospam@delfs.dk> skrev i en meddelelse
news:9fr638$oss$1@sunsite.dk...

> Jeg har dette query:
> SELECT o.polt_nr, k.id, k.navn, o.polt_nr FROM ordrer o, kunder k WHERE
> status='KU' && o.kunde_id=k.id && udskrevet = 1 GROUP BY o.polt_nr
>
> Det jeg vil med det er følgende, men eftersom MySQL ikke understøtter
> sub-selects, vil jeg høre om der er nogen der har en idé til hvordan jeg

> gør:
> SELECT o.polt_nr, k.id, k.navn, o.polt_nr FROM ordrer o, kunder k WHERE
> status='KU' && o.kunde_id=k.id && '1' NOT IN(SELECT udskrevet FROM ordrer
> WHERE kunde_id=k.id && polt_nr=o.polt_nr) GROUP BY o.polt_nr
>
> Jeg er desuden ikke sikker på at det er den korrekte syntax for
sub-selects
> da det ikke er noget jeg beskæftiger mig meget med, men jeg håber du kan
se
> hvad jeg mener :)

En mindre redegørelse der, måske, kan hjælpe i som er lidt uforstående ang.
min problematik:
Mit oprindelige query (se øverst), giver x antal rækker som resultat... det
jeg vil, er at inden en række bliver "godkendt" skal der først lige tjekkes
om der findes rækker med samme kunde_id og polt_nr som den igangværende
række, men med værdien 0.. Hvis der er skal rækken *ikke* med i output.

Én jeg kender sagde at det måske er HAVING-klausulen jeg skal ha' fat i..
? -jeg har prøvet lidt med den, men får en "Unknown column 'o.udskrevet' in
HAVING-clause", selvom feltet findes..? Det undrer mig lidt, i sær da den
ikke har pillet o'et af, og sagt "Unknown ... 'udskrevet' "(uden o) som den
normalt gør hvis der er fejl i et join-query.

--
Mvh. Jonas Delfs, http://delfs.dk

"Rigtige mænd scorer på ICQ" - Christian Jørgensen



Søg
Reklame
Statistik
Spørgsmål : 177560
Tips : 31968
Nyheder : 719565
Indlæg : 6408941
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste