Niet-gerelateerde Query met een uitzondering

Status
Niet open voor verdere reacties.

DarkPhalanx

Gebruiker
Lid geworden
28 apr 2012
Berichten
12
Weer een goedenavond ;)

Ik heb een drop-down list van een niet-gerelateerde query met "artikelen" die momenteel niet voorkomen in de "bestellingen tabel".
Nu wil ik alleen een uitzondering maken voor een bepaald artikel dat wel in de "bestellingen tabel" voorkomt en dus wel in de drop-down list voor moet komen.

nu heb ik dat gedaan door bij de query in "Of:" 000/* (alle artikelen die beginnen met 000/) te zetten. Maar zo worden de gekozen artikelen steeds vaker weergegeven naar mate ze vaker voor komen in de "bestellingen tabel".

En dus de vraag hoe voorkom ik dat?
 
Laatst bewerkt:
Snap ik de vraag? Nee dus. Je hebt een keuzelijst, met artikelen. Daar houdt het eigenlijk al op... Waar komt die lijst vandaan? Wat doet de tabel Bestellingen daarbij? Wil je één artikel uit Bestellingen wel toevoegen, en de rest niet?
 
Ik heb als volgt:

bon_tabel
artikelen_tabel (alleen maar unieke artikelen)
bestellingen_tabel

artikelen_selecteren query

de lijst met artikelen is een query deze laat alle artikelen zien uit de artikelen_tabel behalve diegen die in de bestellingen_tabel voorkomen.
en zodra ze dus worden geselecteerd voor een bestelling dan is dat unieke artikel niet nogmaals te selecteren (omdat hij dan voorkomt in bestellingen_tabel).

nu wil ik dat er voor artikelen die met 000/ beginnen een uitzondering gemaakt word.
maar dan word deze artikelen in de de keuzelijst zovaak weer gegeven als dat ze in bestellingen_tabel voorkomen (soms wel 5 keer)
 
Laatst bewerkt:
Bekijk bijlage voorbeeld.zip

Hier heb ik het even nagemaakt,

In het formulier "bon_maken" kun je dus artikelen selecteren. Zoals u kan zien "artikel met id 7" waarvan de naam begint met 000/ komt nu drie keer voor in de keuze lijst omdat hij al drie keer op de bon staat.
 
Je query kun je simpel aanpassen:
[sql]SELECT DISTINCT artikelen_tabel.artikel_id, artikelen_tabel.naam
FROM artikelen_tabel LEFT JOIN bestellingen_tabel ON artikelen_tabel.[artikel_id] = bestellingen_tabel.[artikel_id]
WHERE (((bestellingen_tabel.artikel_id) Is Null)) OR (((artikelen_tabel.naam) Like "000/*"));[/sql]
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan