asp - asp.net - aspcode.it
Domande sul forumCerca un argomento nel forum
Vai a :



Forum - SQL e Database

query associazione parametro

Daniela83
scritto il 1/7/2008 12:07:41

Messaggi Scritti : 2

Ciao,

sto sviluppando un'applicazione che interroga un DB MS SQL server. In base al valore di un parametro (qui lo chiamo X) di una tabella C dove ci sono delle risposte devo associare solo alcune voci della tabella D. come farlo in SQL?

la tabella D è formata da id_voce, voce
La tabella C è formata da id_risp, risposta

io devo fare una tabella E che contenta risposta, voce.
in base alla risposta che ho dato (padre o madre), devo visualizzare solo le voci (molto, abbastanza, poco, niente)

Ho provato così:

Select * from
If Q1.p_index='1' and Q1.p_index='2'
then Scelta.voce='Ottimo'
else (qui non so cosa mettere perchè vorrei che visualizzasse tutte le altre voci)
End if




tabella risposte

CREATE TABLE `Questionari`.`Q2` (
`id q2` int(10) unsigned NOT NULL auto_increment,
`voci` varchar(500) NOT NULL,
PRIMARY KEY (`id q2`)
) ENGINE=MyISAM AUTO_INCREMENT=23 DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC;

tabella riepilogativa

CREATE TABLE `Questionari`.`Q1` (
`id q1` int(11) NOT NULL auto_increment,
`voci` varchar(300) NOT NULL,
`padre` varchar(45) NOT NULL,
`voci_bis` varchar(45) NOT NULL,
PRIMARY KEY (`id q1`)
) ENGINE=MyISAM AUTO_INCREMENT=45 DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC;

tabella scelte

CREATE TABLE `Questionari`.`Scelte` (
`id scelta` int(11) NOT NULL auto_increment,
`voce` varchar(45) NOT NULL,
PRIMARY KEY (`id scelta`)
) ENGINE=MyISAM AUTO_INCREMENT=9 DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC;


tabella che contiene le tre cose

select `id q1`, d.voci as padre, a.voci, padre as p_index, b.voce as voci_bis, b.`id scelta`
from Q1 a
join Q2 d
on a.padre=d.`id q2`
left join Scelte b
on a.voci_bis=b.`id scelta`


esempio:

tabella risposte

in famiglia,coi genitori
in famiglia, con i fratelli
padre
madre

tabella scelte
ottimo
buono
molto
abbastanza

tabella riepilogativa
in famiglia, coi genitori (vuoto)
in famiglia, coi fratelli (ottimo)

per padre e madre devo associare solo molto e abbastanza

praticamente ho fatto un questionario e le risposte devono essere registrate nel database... cosi ho fatto la tabella risposte dove sono indicate tutte le risposte del questionario, la tabella scelte dove sono registrate tutte le diverse scelte, quindi una tabella riepilogativa che contiene tutti le risposte con le scelte.
nella tabella riepilogativa ho fatto un campo con le risposte ("PADRE"), uno dove sono registrate tutte le risposte possibili ("VOCI") e uno dove sono registrate le scelte (VOCI_BIS)

praticamente ho
q1 I tuoi genitori sono
- sposati
-divorziati

q2 com'è il rapporto
ottimo buono pessimo
-padre
-madre

q3 quanto parli con
poco abbast molto

-famiglia
-amici
-prof

etc.

ho registrato tutte le domande, tutte le risposte, tutte le scelte
nella tabella riepilogativa ho fatto un select che selezionasse le domande (padre), tutte le possibili risposte di ogni domanda (voci), e poi ho fatto un campo voci_bis per inserire le scelte.

solo per le risposte alla domanda q2 devo solo poter scegliere le scelte indicate e quindi devo solo visualizzare quello nelle opzioni.


aiutoooo

Inviva una mail a Daniela83
  Pagina :  ]1[ 
Rispondi alla Discussione  
ASPCode Forum v.2.7b    

Ciao , oggi è il 23/11/2017, e sono le ore 06:13:33
In questo momento ci sono 0 utenti on-line e 4364 ospiti.
Messaggi inseriti oggi: 0
Totale argomenti inseriti: 8121
Totale messaggi inseriti: 28060
ArgomentoAttivo.
Argomento Chiuso.
Argomento Nuovo.
Totale utenti registrati : 10987
Ultimo utente registrato : ta69
Non sei loggato al forum, se vuoi farlo clicca qui, se non sei ancora registrato al forum e vuoi farlo clicca qui.

COMMUNITY - Login
 Username:
 
 Password:
 
Voglio registrarmi!
Password dimenticata?
 Utenti on-line: 0
 Ospiti on-line: 4364
AspIn.com
Utilità
Link

Utenti connessi: 4364