Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407

    Campi corrispondenti tra tabelle differenti

    Ciao.

    Se ho due tabelle: la tabella_A e la tabella_B in cui:

    tabella_A con i campi Codice e Descrizione
    tabella_B con il campo Codice

    Come posso fare con un'unica query ad estrarre da tabella_B il Codice e richiamare da tabella_A la corrispondente descrizione ?

    Cioè:

    tabella_A Codice = 1 Descrizione = Pane
    tabella_B Codice = 1

    E' possibile ?

  2. #2
    Select * from tabella_a a, tabella_b b where a.codice=b.codice
    http://www.anobii.com/isalreadyinuse

  3. #3
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,755
    SELECT tabella_B.codice, tabella_A.descrizione FROM tabella_A INNER JOIN tabella_B ON tabella_A.codice=tabella_B.codice
    RIP Cicciobenzina 9/11/2010

    "Riseminaciceli, i ceci nell'orto"

  4. #4
    http://www.anobii.com/isalreadyinuse

  5. #5
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    Originariamente inviato da wallrider
    SELECT tabella_B.codice, tabella_A.descrizione FROM tabella_A INNER JOIN tabella_B ON tabella_A.codice=tabella_B.codice
    Questa funziona.... l'altra no...

  6. #6
    Sicuro?
    http://www.anobii.com/isalreadyinuse

  7. #7
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,755
    Originariamente inviato da ubbicom
    Questa funziona.... l'altra no...

    (mi sembra strano, comunque: sono due modi diversi di ottenere la stessa cosa)
    RIP Cicciobenzina 9/11/2010

    "Riseminaciceli, i ceci nell'orto"

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    32
    mi permetto di riesumare questo topic per non aprirne uno nuovo, avendo un problema tutto sommato simile. Ho due tabelle (tbl_premi e tbl_prodotti) con un campo omonimo, img. Effettuato l'inner join, ho bisogno che mi venga restituito il valore img della tbl_premi.

    con il codice

    il valore è quello della tabella prodotti che non mi serve...

    Sapevo che per specificare i campi di diverse tabelle in un inner join la sintassi corretta era "nome tabella.nome campo", ma il codice

    mi da un errore nel recordset, dicendo "Impossibile trovare l'oggetto nell'insieme corrispondente al nome o al numero richiesto"

    Potete dirmi dove sbaglio? Premetto che in asp sono autodidatta quindi probabilmente manca qualcosa nella formattazione...

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    1,150
    Originariamente inviato da Dan Hero
    mi permetto di riesumare questo topic per non aprirne uno nuovo, avendo un problema tutto sommato simile. Ho due tabelle (tbl_premi e tbl_prodotti) con un campo omonimo, img. Effettuato l'inner join, ho bisogno che mi venga restituito il valore img della tbl_premi.

    con il codice



    il valore è quello della tabella prodotti che non mi serve...

    Sapevo che per specificare i campi di diverse tabelle in un inner join la sintassi corretta era "nome tabella.nome campo", ma il codice

    mi da un errore nel recordset, dicendo "Impossibile trovare l'oggetto nell'insieme corrispondente al nome o al numero richiesto"

    Potete dirmi dove sbaglio? Premetto che in asp sono autodidatta quindi probabilmente manca qualcosa nella formattazione...

    Allora, non so che db usi, ma la sintassi dovrebbe essere la stessa di quello che uso io (Oracle).
    Tu hai scritto

    objRS("tbl_premi.img")

    dove ipotizzo "tbl_premi" è la tabella e "img" il campo.
    Ora a prescindere dalla select che fai (in InnerJoin o in altro modo) la sintassi è sbagliata.

    Ti faccio un esempio banale di una select su due tabelle, poi posta la tua select e la modifichiamo di conseguenza...

    Select a.img, b.codi
    from tbl_premi a,
    tbl_codici
    where a.campo1=b.campo2
    in questo caso, ma ripeto è un esempio, dovresti scrivere
    objRS("img")

    Spero possa esserti utile.
    Facci sapere (indicando che db usi )

  10. #10
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    32
    grazie per la risposta, comincio a chiarirti che uso un normale file .mdb come database, niente mysql o sistemi più avanzati per adesso, conto però di aumentare le mie competenze quanto prima.


    comunque il codice del select è il seguente:

    <%if request.QueryString("id")<>"" then
    set objRS = Server.CreateObject("ADODB.Recordset")
    sql = "SELECT * FROM tbl_premi inner join tbl_pro on tbl_premi.prodotto=tbl_pro.id where lingua='ita' and tbl_pro.id="&request.QueryString("id")
    objRS.Open sql, CSCon, 1, 1%>
    <%while not objRS.eof%>
    <%=objRS("anno")%>
    ...
    ...
    ...
    'fino al nostro
    " target="_blank">[img]immagini/download.jpg[/img]
    <%objRS.movenext wend%>
    eccetera eccetera, fino alla chiusura di eventuali if lasciati in sospeso.

    funziona tutto molto bene, solo quel img, essendo un nome di campo comune tra tbl_pro e tbl_premi, se lo lascio da solo va a pescarmi il valore nella tabella tbl_pro, mentre se immetto tbl_premi.img mi viene restituito un errore.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.