een soort 'als dan' query

Status
Niet open voor verdere reacties.

Elsverheyen

Gebruiker
Lid geworden
28 jan 2016
Berichten
53
Hey, kan men in access een selectiequery maken met volgende criteria: een ja/nee kolom met bijhorende andere kolommen waarbij dan als de ja aangeklikt is alleen de gegevens uit de bijhorende kolommen wordt vermeld. Een soort als - dan criteria
vb
ik heb een query gemaakt met een aantal kolommen:
nummer graf - begraven man ja/nee - naam man - overlijdensdatum man - begraven vrouw ja/nee - naam vrouw - overlijdensdatum vrouw
nu zou ik willen als er een ja staat bij de vrouw alleen naam vrouw en overlijdensdatum vrouw en nummer graf wordt weer gegeven en niet de gegevens van de man
Al vast bedankt om te kijken
Els
 
Ik snap je vraag niet helemaal; als je een query maakt doe je dat op basis van door jou gekozen of gemaakte (een IIF formule staat ook in een veld) velden. Die velden zie je dus per definitie altijd terug in het resultaat. Hooguit kun je de inhoud van het veld leeg laten. Maar dan nog: als je een record hebt van een bepaalde vrouw, dan zie je nog steeds de velden die bij de man horen. Alleen hou je die dan leeg.
Als je de db had opgezet volgens de structuur die ik je in het andere draadje heb aangeraden, had je deze vraag overigens niet gesteld, want dan had je de gewenste output wél gehad. In je huidige opzet kun je weinig anders doen dan veel elke gegevensgroep een aparte query maken en die in een UNION query samenvoegen.
 
hallo Els,
in de query zelf weet ik niet (anderen zullen het misschien wel weten)
maar als je de query gebruikt als basis voor een formulier of rapport,
kan je in dat formulier en/of rapport een voorwaardelijke opmaak instellen

bij het veld "Naam Man" zet je dan:
IIf([VrouwBegraven?]=-1;" ";[Naam Man])

bij het veld "Datum Man" zet je dan:
IIf([VrouwBegraven?]=-1;" ";[Datum Man])

mvg,
Duke Of Earl
 
@octafish, helemaal eens met de opzet. In pure SQL zou het echter volgens mij wel kunnen met een CASE:

[SQL]
SELECT CASE 'naam' WHEN 'vrouw' = true THEN 'naamvrouw' ELSE 'naamman' END FROM 'tabelnaam'
[/SQL]

In dat geval zou je slechts een enkele kolom uit je query krijgen ook al zijn er onder water 3 andere kolommen bij betrokken.

OFFTOPIC: Ik begrijp nog steeds niet goed waarom MS zo verkrampt vasthoud aan een vage subset van de hele standaard, vooral niet nu de basis SQL server vrij te gebruiken is.
 
Nou, ik weet niet welke Access versie jij gebruikt, maar ik heb nog nooit een Select Case in een Access query gezien :). Hoe ik 't ook probeer, hij struikelt al over het woord SELECT. Of gebruik je een Passthrough?
 
Ik vertaalde het begrip 'pure SQL' anders :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan