Newsgroup: it.comp.appl.access
Titolo: sintassi per visualizzare anche lerighe nulle ozero

Questa è la sintassi che ho scritto:
SELECT t1.annonas, COUNT(t1.tipo) AS nv, COUNT(t2.tipo) AS nm FROM
tb_count_tipo t1,tb_count_tipo t2 WHERE  t2.annonas= t1.annonas  AND
t1.cromoso='1' AND t1.tipo='1' And t2.cromoso='1' AND t2.tipo='2' GROUP
by t1.annonas
il problema è che non mi vengono visualizzati gli anni in cui il
conteggio risulta uguale a zero o nullo e non so come fare. So che in
oracle per ovviare a questo problema si usa inserire un (+) in
....WHERE  t2.annonas(+)= t1.annonas....
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 ....WHERE  t2.annonas(+)= t1.annonas....
Non sono sicuro di aver capito perfettamente il tuo problema.
Comunque con Access non vengono selezionati i record i cui campi di
selezione sono Null, ma vengono selezionati normalmente quelli con valore
zero.
Vai sul Sito Comune (link qui sotto) e nella Sezione Queries leggi queste
due FAQ:
1) 2.7 Visualizzare tutti i records con una query parametrica di Federico
Luciani.
2) 2.15 Visualizzare tutti i records con una query parametrica (2)
-- 
Roberto
-----------------------------------------------------
il Sito Comune di it.comp.appl.access
http://www.sitocomune.com
----------------------------------------------------

 ....WHERE  t2.annonas(+)= t1.annonas....
Le nuove versioni di Oracle anche hanno OUTER JOIN.
In Access (ovvero JET) puoi usare p.e. un LEFT [OUTER] JOIN.
Se non vedo male nel tuo caso sarebbe:
SELECT t1.annonas, COUNT(t1.tipo) AS nv, COUNT(t2.tipo) AS nm FROM
tb_count_tipo t1 LEFT JOIN tb_count_tipo t2 ON t1.annonas = t2.annonas
WHERE t1.cromoso='1' AND t1.tipo='1' And t2.cromoso='1' AND t2.tipo='2'
GROUP by t1.annonas
-- 
HTH
Karl
*********
Access FAQ: 
www.donkarl.com/it
 + iscriviti alla prima Conferenza
Italiana per Sviluppatori di Access (CISA 1), Arezzo, 4+5/6/2005 

 ho scritto? Altrimenti posta il tuo vero statement.
Sono sicuro di non aver cambiato niente; ciň che ho scritto č
esattamente
la sintassi che utilizzo.
Forse si non son stato chiaro:  il problema č che non vengono contati
, o meglio visualizzati le righe che non soddisfano la condione numero
due
della select vale a dire ...t2.cromoso='1' AND t2.tipo='2'...ma solo
quelle
il cui conteggio č diverso da zero.
ciao e grazie mike


 wrote in message
news:3c1m2vF...@individual.net
Ciao Karl ho provato come mi hai suggerito ma eseguendo la select
mi vien generato un errore: 
"not unique table/alias; 't2'
sai dirmi di piů??
grazi
mike


 sai dirmi di più??
Sei sicuro che non hai cambiato niente dello statement SQL che
ho scritto? Altrimenti posta il tuo vero statement.
-- 
cu


 quelle il cui conteggio č diverso da zero.
Per me non č chiaro cosa vuoi e fai in realtŕ.
Forse ti aiuta un altro che ti capisce meglio.


Forse si non son stato chiaro:  il problema è che non vengono contati
, o meglio visualizzati le righe che non soddisfano la condione numero
due
della select vale a dire ...t2.cromoso='1' AND t2.tipo='2'...ma solo
quelle
il cui conteggio è diverso da zero.
ciao e grazie mike


 quelle il cui conteggio č diverso da zero.
Allora tu hai una sola tabella "tb_count_tipo" (come vedo solo adesso).
Per ogni anno e nei record dove cromoso='1' vuoi contare le presenze
di tipo = '1' e di tipo = '2'. Se con questo ti ho capito bene prova con:
SELECT t1.annonas, -Sum([tipo]="1") AS nv, -Sum([tipo]="2") AS nm
FROM tb_count_tipo AS t1
WHERE t1.cromoso='1'
GROUP BY t1.annonas
-- 
cu


 ciao e grazie mike
Mi dispiace ma non riesco a capire a cosa ti riferisci: naturalmente non
verranno contati i record per i quali t1.tipo e/o t2.tipo sono Null.
