160 messaggi dal 23 febbraio 2004
sql = "SELECT cognome, nome FROM anagrafica GROUP by cognome ORDER by cognome asc"

<option value=<%=replace(rs("cognome"), " ", "_") & replace(rs("nome"), " ", "_")%>><%=rs("cognome") &" "& rs("nome")%> </option>


Con questo code recupero i dati popolando la listbox da un determinato campo del database; raggruppando i cognomi, ho dei casi di omonimia, per questo vorrei che si visualizzasse anche il nome nella listbox.
ecco le difficoltà:

1) nella query non funziona più il GROUP BY;
2) nella listbox vedo anche il nome, ma la query di non estrae più nulla

pagina della query:
Dim strCognome 
strCognome = Replace(Request("utente"), "_", " ") 

SQLDown = "SELECT catalogo_linee.*, catalogo_articoli.InVendita, catalogo_articoli.Data, catalogo_articoli.Scadenza, catalogo_articoli.Cognome FROM catalogo_linee INNER JOIN catalogo_articoli ON catalogo_linee.ID = catalogo_articoli.IDLinea WHERE catalogo_articoli.cognome='"& strCognome &"' order by catalogo_linee.ID asc"

Set RECDown = ConnDown.Execute(SQLDown)


dove sbaglio?
5 messaggi dal 06 settembre 2002
A mio parere dovresti aggiungere un campo ID nella anagrafica, e fare riferimento come valore della list allo stesso.
Il group by, poi, dovresti farlo su cognome+nome, in caso di omonimia altrimenti e' un macello..
160 messaggi dal 23 febbraio 2004
pgferro ha scritto:
A mio parere dovresti aggiungere un campo ID nella anagrafica, e fare riferimento come valore della list allo stesso.
Il group by, poi, dovresti farlo su cognome+nome, in caso di omonimia altrimenti e' un macello..

Grazie ho già un campo ID nella tbl anagrafica ed un campo IDAbbonato...
ma non capisco cosa vuoi dirmi... scusa
5 messaggi dal 06 settembre 2002
Io lo penso cosi' :

sql = "SELECT id, cognome, nome FROM anagrafica ORDER by cognome asc" 

<option value=<%=rs("id")%>><%=rs("cognome") &" "& rs("nome")%> </option>


Dim abbonatoID
abbonatoID=Request("idutente")


SQLDown = "SELECT catalogo_linee.*, catalogo_articoli.InVendita, catalogo_articoli.Data, catalogo_articoli.Scadenza, catalogo_articoli.Cognome FROM catalogo_linee INNER JOIN catalogo_articoli ON catalogo_linee.ID = catalogo_articoli.IDLinea WHERE catalogo_articoli.idabbonato="& abbonatoid &" order by catalogo_linee.ID asc" 

Set RECDown = ConnDown.Execute(SQLDown) 



In questo modo non hai il problema della omonimia

Does it make sense ??

--
PG
160 messaggi dal 23 febbraio 2004
Grazie, ma con questo code la query non va in errore ma estrae solo un ID di quel cliente che però può avere diversi IDAbbonamento...mi spiego?
Modificato da omnia2004 il 30 giugno 2004 23.03 -
160 messaggi dal 23 febbraio 2004
Mi sono spiegato male probabilmente...
la 'cosa' funziona così

il sig. Pippo si registra al sito ed ottiene un suo ID univoco, gestito da una tabella1 così strutturata:
ID
IDRivista
Nome
Cognome

poi Pippo decide di abbonarsi ad una o più riviste di un catalogo, che è gestito tramite una tabella2 strutturata così:
ID
Nome_Rivista

le due tabelle sono relazionate uno-a-molti tramite il campi ID (tabella1) e campo IDLinea (tabella2)

devo estrarre tramite un form+una query l'elenco delle riviste a cui è abbonato Pippo, ma non ci riesco.
Grazie

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.