Šta je novo?

Access/SQL pitanje

MightyLemon

Slavan
Učlanjen(a)
16.10.2005
Poruke
48
Poena
304
Imam sledeci problem...
Vodim evidenciju poklona koji se daju zaposlenima... Svako ima pravo na 5 poklona godisnje... Svaki poklon predstavlja novi unos... Kako da napravim upit koji kada se pozove obavestava "nema prekoracenih limita" ili "limite su prekoracili: Mita Mitic, Pera Peric..."???
 
Pretpostavljam da je Access...
Treba da koristiš agregatnu funkciju COUNT.
Evo primera, a ako mi kazes strukturu tabela(e) i koja baza dobiješ tačan upit

SELECT Ime, Switch(count(*) >= 5, 'limit dostignut',count(*) < 5, 'ima jos fore')
FROM Pokloni
GROUP BY Ime;

Odavde možeš da skapiraš. Ovo važi za Access, probao sam ga.

Poz.

p.s. Dobićeš

Milan limit dostignut
Marko ima jos fore
...

Ako hoćeš samo oni koji su prekoračili onda
SELECT Ime
FROM Pokloni
GROUP BY Ime
Having Count(*) >= 5;

...
 
Poslednja izmena:
To je to!!! :D
Malo sam modifikovao kod i izgleda ovako:
SELECT [data].[Last Name], [data].[First Name], [data].[Subject]
FROM data
WHERE (((data.Subject)=[]))
GROUP BY [data].[Last Name], [data].[First Name], [data].[Subject]
HAVING Count (*) >5;

Jos nekoliko pitanja... U koloni subject nalazi se nekoliko vrsta poklona. U ovoj formi moram da upisem Subject... Kako da bude definisano samo za jedan Subject, npr Dinner?
 
Ne znam da li sam dobro razumeo, ali ako oćeš da fiksiraš query da ti prikazuje recimo samo one koji su dobili 5 "Dinnera" umesto ..WHERE subject=[] kucaj WHERE subject = 'Dinner'

ili ako query koristiš recimo na listbox-u na formi možeš recimo da uradiš combo box u kom će da budu svi mogući pokloni i na afterupdate radiš .requery listboxa

onda where mora da izgleda kao: WHERE Subject=[Forms]![NazivForme]![NazivComboa]
 
Uspeo sam... Trebao mi je samo fiksiran subject
Hvala!
 
Nazad
Vrh Dno