query

Status
Niet open voor verdere reacties.

rikvriens

Gebruiker
Lid geworden
27 okt 2011
Berichten
28
Hoi Allemaal,

Ik zit met een vraag waarvan ik niet weet of het überhaupt mogelijk is.
Ik heb een query die mij voorraadbewegingen laat zien. Nu wil ik uitzoeken hoeveel aanvulopdrachten er het afgelopen jaar zijn gedaan.
Daartoe heb ik een aantal parameters aangepast en daarmee ben ik een heel eind, echter ik zie nog niet wat ik wil zien. 1 aanvulopdracht kan namelijk bestaan uit meerdere scans. Nu wil ik graag het aantal unieke records opvragen tot en met een bepaalde datum.

in de bijlage een (naar Excel ge-exporteerd) voorbeeldbestandje dat ik heb geanonimiseerd. De linkerkant van dat bestandje is wat er uit de database komt op basis van mijn huidige script. Nu zou ik graag zien wat ik moet toevoegen om daar enkel over te houden wat in de rechter rij staat in het voorbeeldbestand. (De unieke artikelnummers BINNEN de datum, komt een artikelnummer op een andere datum weer voor, dan mag hij hem dus weer eenmalig tonen voor die datum). Ik hoop dat het zo duidelijk is.

Alvast hartelijk dank!
 

Bijlagen

Gebruik de functie DISTINCT in je query.

PS je rechterkolom klopt niet.

Tardis
 
Hoi Tardis,

Je hebt gelijk. Slordig van me, zijn geen dingen om om 10 voor 6 nog 'even' te doen.

Ik begrijp distinct maar geeft die niet enkel de unieke artikelnummers uit het opgevraagde tijdsbestek? Ik wil graag dat hij per datum de unieke artikelnummers geeft, en ik zoek in een lijst met verschillende datums, een artikelnummer kan dus vaker in de opgevraagde lijst staan doordat de datum anders is bij het vorige record waarin dat artikelnummer stond. Gaat distinct dan nog steeds op en zoja hoe dan?

Groet Rik
 
SELECT DISTINCT Datum, Type, Artikelnr FROM jetabel

al geprobeerd?

Tardis
 
Hoi Tardis,

Ik loop tegen het volgende aan;

Wanneer ik de query uitvoer geeft hij middels distinct alle opties omdat de kolom waar ik naar verwijs een datetime kolom is. Time is niet relevant voor mij maar maakt de kolom wel uniek omdat de tijdstippen op de datum steeds anders zijn. Hoe splits ik dit naar 2 kolommen zodat ik in het de query kan zoeken in de kolomdatum met distinct.

Huidige query ziet er zo uit

select distinct t.move_datetime, t.mutatienr, t.transactiontype_code, t.Article_reference, t.Moved_quantity, t.Type, t.van, t.naar, t.vannr, t.naarnr, t.gebruiker

from NAAM ViEW

--where t.article_reference ='0320818'

where (move_datetime >= trunc(to_date('24-05-2015', 'dd-mm-yyyy')))

--and t.van like '(Z)%'

and t.naar like 'BK%'

and t.transactiontype_code like 'IN02%'

order by t.move_datetime desc
 
Dan zul je in je SELECT statement de tijd uit je datumkolom moeten strippen.
Kun je doen mbv de TRUNC functie.

Tardis
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan