INNER JOIN??

Ciao a tutti,

come va? mi trovo nei pasticci con una semplice query.

Ho una tabella che ha i seguenti campi:

CARATTERISTICHE

idcaratteristiche

idbellezza1

idbellezza2

idbellezza3

idsport1

idsport2

idsport3

BELLEZZA

idbellezza

bellezza

SPORT

idsport

sport

il mio problema č l'inner join.

Se creo una relazione fra le tabelle CARATTERISTICHE e BELLEZZA legando l'idbellezza1 con l'idbellezza della tabella BELLEZZA tutto fila liscio. Appena lego l'idbellezza2 con l'idbellezza della tabella BELLEZZA mi raddoppia i records. Esiste una soluzione? Purtroppo mi hanno rifilato sto database fatto in questo modo. So che non č il massimo ma ormai, come al solito, hanno scritto diversi programmi su sta struttura.

Grazie

Ulisse

 :bye:

inviato 9 anni fa
ulisse
X 0 X

riporta la query con le 2 join

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X
SELECT
`caratteristiche`.`concorrente`,
`caratteristiche`.`bellezza1`,
`caratteristiche`.`bellezza2`,
`caratteristiche`.`bellezza3`,
`bellezza`.`bellezza`
FROM
`caratteristiche`
Inner Join `bellezza` ON `bellezza`.`idbellezza` = `caratteristiche`.`bellezza1` AND `bellezza`.`idbellezza` = `caratteristiche`.`bellezza2` AND `bellezza`.`idbellezza` = `caratteristiche`.`bellezza3`

vorrei recuperare invece degli id i valori nelle varie tabelle.

Grazie

 :bye:

risposto 9 anni fa
ulisse
X 0 X

ma nella query c'č solo una JOIN. Dovrebbero invece esserci 3 JOIN, sempre tra le tabelle "caratteristiche" e "bellezza", fatte su 3 condizioni diverse.

P.S.: non č necessario scrivere INNER JOIN, basta una JOIN normale.

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

 ??? mi sono confuso!

In che senso 3 join!? non capisco che devo fare.

grazie dell'aiuto

risposto 9 anni fa
ulisse
X 0 X

Prova qualcosa del genere:

SELECT
   b1.bellezza, b2.bellezza, b3.bellezza
FROM
   caratteristiche car
JOIN
   bellezza b1 ON b1.idbellezza = car.bellezza1
JOIN
   bellezza b2ON b2.idbellezza = car.bellezza2
JOIN
   bellezza b3 ON b3.idbellezza = car.bellezza3
risposto 9 anni fa
Gianni Tomasicchio
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda