Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16

Discussione: realzioni tabelle

  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    69

    realzioni tabelle

    ciao a tutti
    ho 1 tabella catalogo auto relazionata con 3 tabelle:
    marca, colore, alimentazione
    ora, ho fatto un rs che estrapola i dati del catalogo auto e nelle varie colonne voglio far apparire i dati delle altre tabelle

    SELECT catalogo_ctl.modello_ctl, marca_mar.nome_mar
    FROM catalogo_ctl, marca_mar
    WHERE catalogo_ctl.idmar_ctl=marca_mar.id_mar

    come faccio a fare un'istruzione sql che mi estrapola anche i dati delle altre tabelle correlate e non solo della tabella marca?
    anche con join se vi va di farmi vedere i 2 metodi

    grazie in anticipo ciao

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    69
    insisto perchè questa cosa mi sta facendo impazzire
    come faccio un'interrogazione sql di una tabella relazionata ad altre 3???
    ma come si fa! si fanno + rs?
    grazie

  3. #3
    Utente di HTML.it L'avatar di Gioba66
    Registrato dal
    Jun 2002
    Messaggi
    2,189
    dipende come sono correlate le tabelle: 1 ad 1 oppure 1 a molti
    nel primo caso usa inner join, nel secondo uda left (o right) join.
    senza darci ulteriori indicazioni non possiamo aiutarti
    Tutti vogliono parlare, nessuno sa ascoltare.

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    69
    ciao grazie per la tua risposta
    ma scusa, left o right join non si riferiscono sempre a 2 e solo 2 tabelle?
    http://www.w3schools.com/sql/sql_join.asp
    io voglio estrapolare i dati da una tabella relazionata con altre 3, mentre con join o where posso eseguire un'interrogazione sql solo tra 2 tabelle!
    penso di essere stato chiaro
    come faccio ad interrogare 4 tabelle relazionate tra di loro?
    le relazioni sono 1 a molti
    grazie ciao

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    69
    chiedo scusa se faccio unaltro post
    qualche tutorial che mi spiega l'arcano?
    ciao

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    69
    ma sta cosa mi sta facendo impazzire!
    cerco di spiegare bene perchè mi lascia perplesso il fatto che nessuno risponde, ma non confondiamo, non è che mi aspetto per forza risposte, è che questo mi fa pensare che il mio è un errore concettuale e vorrei capire
    ho 1 tabella con una serie di modelli di auto, relazionata con 3 tabelle
    1: marca
    2: colore
    3: alimentazione
    ora, faccio un'interrogazione sql, quella di sopra, e dal rs posso così estrarre e stampare a video i modelli di auto e le marche relative
    ok tutto funziona
    ma se voglio inserire nel rs anche le altre 2 tabelle (colore e alimentazione) come faccio??

  7. #7
    Utente di HTML.it L'avatar di Gioba66
    Registrato dal
    Jun 2002
    Messaggi
    2,189
    select tabella1.campo1, tabella2.campo2, tabella3.campo4 from tabella1 inner join tabella2 on tabella1.campo4=tabella2.campo5 inner join tabella3 on tabella1.campo6=tabella3.campo7 where tabella1.campo9 = 23

    che ne so, cambia quello che credi ma la sintassi è questa
    Tutti vogliono parlare, nessuno sa ascoltare.

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    69
    scusa ma mi da un errore di sintassi

    SELECT catalogo_ctl.modello_ctl, marca_mar.nome_mar, tipo_tip.nome_tip
    FROM catalogo_ctl
    INNER JOIN marca_mar
    ON catalogo_ctl.idmar_ctl=marca_mar.id_mar
    INNER JOIN tipo_tip
    ON catalogo_ctl.idtip_ctl=tipo_tip.id_tipo

    se metto solo questo:
    SELECT catalogo_ctl.modello_ctl, marca_mar.nome_mar, tipo_tip.nome_tip
    FROM catalogo_ctl
    INNER JOIN marca_mar
    ON catalogo_ctl.idmar_ctl=marca_mar.id_mar

    funziona
    il mess d'errore è questo:

    syntax error (missing operator) in query expression 'catalogo_ctl.idmar_ctl=marca_mar.id_mar
    INNER JOIN tipo_tip
    ON catalogo_ctl.idtip_ctl=tipo_tip.id_tipo'

    grazie per il tuo aiuto

  9. #9
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    69
    magari può servire a qualcun'altro
    ho provato a fare così:

    SELECT catalogo_ctl.modello_ctl, marca_mar.nome_mar
    FROM catalogo_ctl
    INNER JOIN marca_mar
    ON catalogo_ctl.idmar_ctl=marca_mar.id_mar
    UNION
    SELECT catalogo_ctl.modello_ctl, tipo_tip.nome_tip
    INNER JOIN tipo_tip
    ON catalogo_ctl.idtip_ctl=tipo_tip.id_tipo

    non mi da errori di sintassi, ma nel rs mi appaiono solo modello_ctl e marca_mar, non il tipo
    se faccio il test nella finestra rs di dw mi raddoppia i modelli, ad uno fa corrispondere la marca e all'altro (modello replicato) fa corrispondere il tipo (che poi sono auto nuove, usate, km0), ma nel rs non appare il tipo, solo il modello e la marca

  10. #10
    se qui SELECT catalogo_ctl.modello_ctl, marca_mar.nome_mar non gli dici anche di selezionare (= select) anche il tipo, non te lo darà mai

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 © 2025 vBulletin Solutions, Inc. All rights reserved.