alve gente,
problema: ho da fare sti benedetti report. Ora, vorrei estrarre per ogni domanda utte le possibili ripsote. per ogni risposta possibile vedere se ha avuto o meno risposte (basta un contatore).
Per prima cosa devo estrarre tutti i moduli di un questionario, dai moduli tutte le domande, da lì le risposte.
ora, la prima query estre tutte le risposte delle domande.
la seconda tutte quelle date.
In oltre c sono delle risposte (quelle aperte) che non hanno la relazione domanda-possibile_risposta, ma solo domanda-risposta_data (basta vedere l'output in fondo).
qualcuno sa darmi una mano?

------ TUTTE LE RISPOSTE POSSIBILI ------
immagine delle tabelle: http://img161.imageshack.us/img161/3...ispostesp1.jpg

SELECT
qo_domanda_testo."testo" AS qo_domanda_testo_testo,
qo_risposta_testo."testo" AS qo_risposta_testo_testo
FROM
"public"."qo_modulo_domanda" qo_modulo_domanda INNER JOIN "public"."qo_questionario
_modulo" qo_questionario_modulo ON qo_modulo_domanda."id_modulo" = qo_questionario_modulo."id_modulo"
INNER JOIN "public"."qo_domanda_risposta" qo_domanda_risposta ON qo_modulo_domanda."id_domanda" = qo_domanda_risposta."id_domanda"
INNER JOIN "public"."qo_domanda_testo" qo_domanda_testo ON qo_domanda_risposta."id_domanda" = qo_domanda_testo."id_domanda"
INNER JOIN "public"."qo_risposta_testo" qo_risposta_testo ON qo_domanda_risposta."id_risposta" = qo_risposta_testo."id_risposta"
WHERE
qo_questionario_modulo.id_questionario = 1
and (qo_risposta_testo.id_lingua = 1
or qo_risposta_testo.id_lingua = 0)
and (qo_domanda_testo.id_lingua = 1
or qo_domanda_testo.id_lingua = 0)

----- RISPOSTE DATE ----
qui un immagine di come sono le tabelle: http://img161.imageshack.us/img161/2...ispostevb5.jpg

SELECT
qo_domanda_testo."testo" AS qo_domanda_testo_testo,
qo_risposta_testo."testo" AS qo_risposta_testo_testo,
count(qo_questionario_risposta."id_risposta")
FROM
"public"."qo_modulo_domanda" qo_modulo_domanda INNER JOIN "public"."qo_questionario_modulo" qo_questionario_modulo ON qo_modulo_domanda."id_modulo" = qo_questionario_modulo."id_modulo"
INNER JOIN "public"."qo_questionario_risposta" qo_questionario_risposta ON qo_modulo_domanda."id_domanda" = qo_questionario_risposta."id_domanda"
INNER JOIN "public"."qo_domanda_testo" qo_domanda_testo ON qo_questionario_risposta."id_domanda" = qo_domanda_testo."id_domanda"
INNER JOIN "public"."qo_risposta_testo" qo_risposta_testo ON qo_questionario_risposta."id_risposta" = qo_risposta_testo."id_risposta"
WHERE
qo_questionario_modulo.id_questionario = 1
and (qo_risposta_testo.id_lingua = 1
or qo_risposta_testo.id_lingua = 0)
and (qo_domanda_testo.id_lingua = 1
or qo_domanda_testo.id_lingua = 0)
group by qo_domanda_testo_testo,qo_risposta_testo_testo

praticamente bisognerebbe fare il merge delle due query e avere il contatore a 0 quando la risposta non è mai stata selezionata.
sai come posso fare?
per capirci, l'output delle due query è questo:
tutte le risposte possibili:
http://img291.imageshack.us/img291/5...sptutteyq6.jpg
le risposte date:
http://img291.imageshack.us/img291/6...ispdateaz5.jpg
In risposte date, ho evidenziato le risposte aperte. come si vede, quelle due non compaiono nella prima query.
come potrei fare ad avere tutto in una?