Forum Coders' city Strona Główna Coders' city
Nasza pasja to programowanie!
 

 PomocPomoc   SzukajSzukaj   UżytkownicyUżytkownicy   GrupyGrupy  RejestracjaRejestracja 
Archiwum starego forum + teoria    RSS & Panel/SideBar
 ProfilProfil   Zaloguj się, by sprawdzić wiadomościZaloguj się, by sprawdzić wiadomości   ZalogujZaloguj 

Potrzebuję szybkiej odpowiedzi na moje pytanie... Zasady

[Access] Kwerenda dla trzech najwyższych wartości w rekordzie



 
Odpowiedz do tematu    Forum Coders' city Strona Główna -> Bazy danych
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
elfface



Dołączył: 31 Paź 2012
Posty: 172

PostWysłany: Pią Lis 16, 2018 1:29 pm  OP    Temat postu: [Access] Kwerenda dla trzech najwyższych wartości w rekordzie Odpowiedz z cytatem Pisownia

Dzień dobry, kolejny raz proszę o pomoc w problemie.
Próbuję zrobić zestawienie dla określonych osób (Q_MedOrd), którym należy się premia, po spełnieniu kilku warunków:
1. Każda osoba musi z ostatnich trzech lat otrzymać ocenę 6, 5 lub N.
2. W ciągu trzech ostatnich lat ocena N może wystąpić tylko 1 raz.
3. I tu problem: lata nie następują po sobie w kolejności, mogą być przerwy, a zatem w tym przypadku zasadniczo rozpatrujemy trzy ostatnie oceny - i tu nie mam pomysłu jak wykazać w kwerendzie (Q_MedOrd_OpOcen) trzy ostatnie lata, w których osoba pełniła warunek 1 i 2.
Chwilowo, z uwagi na brak pomysłu, przygotowałem rozwiązanie na sztywno (określając rok: 2018, 2017, 2016), które działa, ale tylko w przypadku, gdy wszyscy mają wprowadzone oceny w latach kolejno następujących po sobie (Q_OpOcen_01, Q_OpOcen_02, Q_OpOcen_03).

Dla przykładu, w tabeli (T_OpOcen) znajdują się takie rekordy, które właśnie spełniają warunek nr 3:

ID_OpOcen ID_Osoby OpOcen_Rok OpOcen_Ocena
38 88888888888 2015 5
39 88888888888 2017 5
40 88888888888 2019 5

Z góry dziękuję za pomoc i pozdrawiam.



Test.zip
 Opis:

Pobierz
 Nazwa pliku:  Test.zip
 Wielkość pliku:  30.76 KB
 Pobierano:  5 raz(y)


_________________
=8-T
Grzegorz Z.
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość
elfface



Dołączył: 31 Paź 2012
Posty: 172

PostWysłany: Pią Lis 16, 2018 8:56 pm  OP    Temat postu: Odpowiedz z cytatem Pisownia

Trochę to wygląda jak jakiś "automonolog", o ile takie słowo istnieje, ale proszę moich wpisów nie brać jako natręctwo lub ponaglenie... :) Wydaje mi się, że znalazłem rozwiązanie, oczywiście na forum, chociaż nie wiem jak je przeoczyłem:
http://www.coderscity.pl/viewtopic.php?t=54123
Bazując na tym rozwiązaniu, utworzyłem 3 kwerendy, wyciągając z wszystkich pozycji dla danego rekordu: 1, 2, 3 pozycję uwzgledniającą ostatnie lata: Q_OpOcen_Poz_01, Q_OpOcen_Poz_02, Q_OpOcen_Poz_03. I chociaż przyznam szczerze, że nie do końca rozumiem o co chodzi w tym kodzie, to kwerenda działa :) Wynikiem, który chciałem otrzymać jest Q_MedOrd_OpOcen_Poz_Top3.
Oczywiście pytania: czy ten sposób myślenia jest właściwy, a nawet jeśli tak, to czy istnieje jeszcze jakieś łatwiejsze/szybsze rozwiązanie?

Z góry dziękuję za pomoc i pozdrawiam.



Test1.zip
 Opis:

Pobierz
 Nazwa pliku:  Test1.zip
 Wielkość pliku:  35.4 KB
 Pobierano:  7 raz(y)


_________________
=8-T
Grzegorz Z.
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość
karolinavb
Site Admin


Dołączył: 25 Maj 2005
Posty: 7897

PostWysłany: Sob Lis 17, 2018 8:08 pm      Temat postu: Odpowiedz z cytatem Pisownia

Cytat:
Wynikiem, który chciałem otrzymać jest Q_MedOrd_OpOcen_Poz_Top3
Nie ma w załączniku takiej kwerendy?


nie_ma.png
 Opis:

Pobierz
 Nazwa pliku:  nie_ma.png
 Wielkość pliku:  8.18 KB
 Pobierano:  7 raz(y)

Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość
elfface



Dołączył: 31 Paź 2012
Posty: 172

PostWysłany: Nie Lis 18, 2018 2:14 am  OP    Temat postu: Odpowiedz z cytatem Pisownia

karolinavb napisał:
Nie ma w załączniku takiej kwerendy?


Witaj karolinavb :) W międzyczasie dorzuciłem post z nowym załącznikiem.

_________________
=8-T
Grzegorz Z.
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość
Wyświetl posty z ostatnich:   
Odpowiedz do tematu    Forum Coders' city Strona Główna -> Bazy danych Wszystkie czasy w strefie CET (Europa)

Strona 1 z 1

 
Skocz do:  
Możesz pisać nowe tematy
Możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Możesz dodawać załączniki na tym forum
Możesz pobierać pliki z tego forum




Debug: strone wygenerowano w 0.12100 sekund, zapytan = 13
contact

| Darmowe programy i porady Jelcyna | Tansze zakupy w Helionie | MS Office Blog |