Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

Query koji vraca zadnjih N zapisa (kao Last ili First samo sa N-brojem (Last N ili First N))

  • 7 odgovora
  • 3.232 pregleda

Najnovija ↓

Query koji vraca zadnjih N zapisa (kao Last ili First samo sa N-brojem (Last N ili First N)) 24.07.2006. u 13:13 · pre 246 meseci #1
Potrebna pomoć.
Kako da napravim query koji treba da iz tabele [Komitent], [Datum] (gdje ima vise Komitenata i za svakog Komitenta vise Datuma) izvuce zadnja N-broja Datuma za svakog Komitenta (jednostavno je za samo zadnjeg ili zadnjih N od svih Komitenata)
Unapred zahvalan
Re: Query koji vraca zadnjih N zapisa (kao Last ili First samo sa N-brojem (Last N ili First N)) 24.07.2006. u 14:11 · pre 246 meseci #2


Imali smo skoro nešto slično. Sa nekim brojem servisa po tipu auta.

Da li mora za SVAKOG komitenta, ili za određenog kojeg mi biramo preko neke forme ili liste. Neznam jeli je pitanje praktično ili teorijsko.

Podaci tog tipa obično nam trebaju (u praksi) par puta godišnje. To sam radio tako što sam šifru komitenta stavio u promenjvu, pa kroz VB dao da mi štampa zadnjh 5 promena. Na formi, odaberem komitenta i vidim zadnjih 5 promena.

Re: Query koji vraca zadnjih N zapisa (kao Last ili First samo sa N-brojem (Last N ili First N)) 24.07.2006. u 15:29 · pre 246 meseci #6
Evo primera, jedna tabela i treba napraviti query koji vraća za svakog komitenta samo zadnja dva iznosa (datuma).
Datum Komitent Ukupno
06. 01. 06 AAA d.o.o. 65,2038216
09. 01. 06 BBB d.o.o. 16,000268
11. 01. 06 BBB d.o.o. 17,8020216
12. 01. 06 AAA d.o.o. 27,3769632
13. 01. 06 AAA d.o.o. 300,9790064
13. 01. 06 JJJ d.o.o. 210,905936
14. 01. 06 AAA d.o.o. 116,5960432
14. 01. 06 FFF d.o.o. 117,3534726
14. 01. 06 BBB d.o.o. 24,062
16. 01. 06 AAA d.o.o. 54,6747416
16. 01. 06 BBB d.o.o. 18,7878
16. 01. 06 JJJ d.o.o. 35,34
17. 01. 06 HHH d.o.o. 95,3244228
18. 01. 06 AAA d.o.o. 46,608
18. 01. 06 DDD d.o.o. 63,5499394
19. 01. 06 CCC d.o.o. 133,223056
19. 01. 06 AAA d.o.o. 15,72
19. 01. 06 JJJ d.o.o. 157,69924
20. 01. 06 AAA d.o.o. 43,656
20. 01. 06 FFF d.o.o. 36,4341618
21. 01. 06 AAA d.o.o. 82,832
23. 01. 06 AAA d.o.o. 23,0529416
25. 01. 06 AAA d.o.o. 31,6469416
26. 01. 06 AAA d.o.o. 23,74
26. 01. 06 Micon d.o.o. 160,176378
26. 01. 06 BBB d.o.o. 19,859268
26. 01. 06 JJJ d.o.o. 119,58756
27. 01. 06 AAA d.o.o. 159,816
27. 01. 06 BBB d.o.o. 16,7220216
27. 01. 06 III d.o.o. 143,3492
27. 01. 06 KKK d.o.o. 183,5151548
28. 01. 06 AAA d.o.o. 165,5140216
28. 01. 06 BBB d.o.o. 20,76
28. 01. 06 III d.o.o. 114,97
30. 01. 06 AAA d.o.o. 65,9120216
30. 01. 06 BBB d.o.o. 38,6373672
30. 01. 06 JJJ d.o.o. 221,7554832
31. 01. 06 AAA d.o.o. 18,216
31. 01. 06 GGG d.o.o. 67,187028
01. 02. 06 HHH d.o.o. 62,9120216
01. 02. 06 BBB d.o.o. 24,5520216
02. 02. 06 AAA d.o.o. 107,2249632
02. 02. 06 BBB d.o.o. 19,3620216
03. 02. 06 AAA d.o.o. 116,304
03. 02. 06 GGG d.o.o. 107,6069808
06. 02. 06 BBB d.o.o. 12,7620216
06. 02. 06 JJJ d.o.o. 258,9764928
07. 02. 06 HHH d.o.o. 81,3
09. 02. 06 AAA d.o.o. 55,6740216
10. 02. 06 AAA d.o.o. 965,4298508
11. 02. 06 HHH d.o.o. 26,4420216
13. 02. 06 BBB d.o.o. 29,6820216
14. 02. 06 AAA d.o.o. 90,012
14. 02. 06 EEE d.o.o. 19,8
15. 02. 06 BBB d.o.o. 16,1853672
16. 02. 06 AAA d.o.o. 79,3000216
16. 02. 06 GGG d.o.o. 23,244
17. 02. 06 AAA d.o.o. 105,92
17. 02. 06 BBB d.o.o. 37,7245792
18. 02. 06 AAA d.o.o. 135,8199264
20. 02. 06 AAA d.o.o. 157,7654996
20. 02. 06 HHH d.o.o. 167,5820432
20. 02. 06 BBB d.o.o. 25,4653672
21. 02. 06 AAA d.o.o. 46,896
21. 02. 06 GGG d.o.o. 222,9227184
21. 02. 06 BBB d.o.o. 41,97
22. 02. 06 AAA d.o.o. 78,484
22. 02. 06 JJJ d.o.o. 253,798416
23. 02. 06 AAA d.o.o. 131,1669632
24. 02. 06 AAA d.o.o. 36,2438
25. 02. 06 AAA d.o.o. 157,276
25. 02. 06 EEE d.o.o. 52,4460648
25. 02. 06 JJJ d.o.o. 31,83
27. 02. 06 AAA d.o.o. 35,4
28. 02. 06 AAA d.o.o. 22,0260216
28. 02. 06 JJJ d.o.o. 105,8129112
Re: Query koji vraca zadnjih N zapisa (kao Last ili First samo sa N-brojem (Last N ili First N)) 24.07.2006. u 16:15 · pre 246 meseci #7
Ja sam napravio tabelu sa dva polja, tblKomitenti = (Komitent,Datum) , PK = (Komitent,Datum) = za jednog komitenta najvsie jedan unos dnevno.

Kveri koji vraca poslednjih 5 unosa za komitenta:

SELECT A.Komitent, A.Datum
FROM tblKomitenti AS A
WHERE (((A.Datum) In (SELECT TOP 5 B.Datum
FROM tblKomitenti AS B
WHERE B.Komitent = A.Komitent
ORDER BY B.Datum DESC;)))
ORDER BY A.Komitent, A.Datum DESC;

Treba ti dakle subquery koji za svaki rekord u main quary vraca do 5 poslednjih rekorad). To se zove correlated subquery.
Zakacio sam primer.

Obrati paznju na append queru koji sam koristio da napravim test rekorde. Daje 5 slucajnih komitenata na slucajan datum.

:-)
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme