Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Problem kod upita, nepostojanje count distinct klauzule

[es] :: Access :: Problem kod upita, nepostojanje count distinct klauzule

[ Pregleda: 2429 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

mika
NBG-ML

Član broj: 55
Poruke: 640
*.privsav.co.yu.



+1 Profil

icon Problem kod upita, nepostojanje count distinct klauzule05.05.2005. u 15:50 - pre 230 meseci
Pozdrav, imam sledeći problem, iz tabele kao na slici:


Code:

+------+----------------+------+
| Ime  |      Datum     | Unos |
+------+----------------+------+
|Pera  |20.01.2005 11:15| 100  |
|Pera  |20.01.2005 11:18| 300  |
|Pera  |05.05.2005 01:15| 500  |
|Pera  |06.01.2005 15:15| 600  |
|Zika  |20.02.2005 11:15| 100  |
|Zika  |28.05.2005 11:18| 300  |
|Laza  |05.05.2005 01:15| 500  |
|Laza  |06.01.2005 15:15| 600  |
|Laza  |06.01.2005 10:14| 300  |
|Laza  |06.01.2005 08:12| 600  |
+------+----------------+------+


...potrebbno je da dobijem sledeći izveštaj:


Code:

+------+----------+
| Ime  | BrojDana |
+------+----------+
| Pera |        3 |
| Zika |        2 |
| Laza |        2 |
+------+----------+


Kao što vidite, u svakom danu po jedna osoba ima više unosa. Potreban je mesečni izveštaj po datumu, nešto kao izveštaj o radnim danima (tj. različitim datumima unosa). Prvo mi je palo na pamet sledeće:

Code:

SELECT  
   COUNT(Format(Datum,"yyyy\.mm\.dd")) , Ime
FROM 
   tblTest 
GROUP BY 
   Ime


... ali ovaj upit vraća UKUPAN broj unosa po imenu, to mi ne treba. Najlogičnije mi je sledeće:
Code:

SELECT
   Ime, COUNT ( DISTINCT format(Datum, "yyyy\.mm\.dd"))
FROM
   tblTest


...ali ovo hoće u Oracle-u, a ne i u Accessu. Ima li pomoći? Probao sam i sa ugnježdenim upitima ali se vrtim u krug.

Svaki komentar je dobrodošao. 10x!
Bolje 100 godina biti milioner nego nedelju dana siromašak
(c) Alan ford
 
Odgovor na temu

Zidar
Canada

Moderator
Član broj: 15387
Poruke: 3085
*.eqao.com.



+79 Profil

icon Re: Problem kod upita, nepostojanje count distinct klauzule05.05.2005. u 16:30 - pre 230 meseci
Moras u dva koraka.

qryQ1: SELECT Ime, Format(Datum,"yyyymmdd")
FROM tblMyTable
GROUP BY Ime, Format(Datum,"yyyymmdd")

qryQ2: SELECT Ime, COUNT(*) FROM qryQ1 GROUP BY Ime

Mozda moze i u jednom koraku ali je garantovano komplikvanije amozda i sporije. ovako bar razumes sta se desava Q1 izlista DISTSNCT datume za svaku osobu, a Q2 to samo posle prebroji


 
Odgovor na temu

mika
NBG-ML

Član broj: 55
Poruke: 640
*.privsav.co.yu.



+1 Profil

icon Re: Problem kod upita, nepostojanje count distinct klauzule06.05.2005. u 09:44 - pre 230 meseci
Pa ja kadgod mogu, izbegavam ugnježdene upite, ali izgleda da će morati ovako kako je Zidar napisao. Anyway:

Code:

SELECT Ime, Count(*) 
FROM
   [SELECT Ime, Format(Datum,"yyyymmdd")
   FROM tblMyTable
   GROUP BY Ime, Format(Datum,"yyyymmdd")] as qryPrikazDana
GROUP BY Ime


...a može i (brže, provereno):


Code:

SELECT Ime, Count(*) 
FROM
   [SELECT distinct Format(Datum,"yyyymmdd", ime)
   FROM tblMyTable] as qryPrikazDana
GROUP BY Ime



Hvala puno i pozdrav!
Bolje 100 godina biti milioner nego nedelju dana siromašak
(c) Alan ford
 
Odgovor na temu

[es] :: Access :: Problem kod upita, nepostojanje count distinct klauzule

[ Pregleda: 2429 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.