
16/01/2010, 18:52
|
| | Fecha de Ingreso: enero-2010
Mensajes: 88
Antigüedad: 15 años, 2 meses Puntos: 2 | |
Ayuda con un INNER JOIN Hola!
Tengo un par de dudas, espero me puedan ayudar.
Suponiendo que tengo estas tablas:
Código:
CREATE TABLE TITULO(
ID_TITULO INT UNSIGNED AUTO_INCREMENT PRIMARY KEY NOT NULL,
ID_CATEGORIA INT NOT NULL, # FOREIGN KEY CATEGORIA.ID_CATEGORIA
TITULO CHAR(40) NOT NULL,
DESCRIPTION CHAR(120) NOT NULL,
IMAGEN_PORTADA CHAR(100) NOT NULL, #475px Ancho, 169px Alto
IMAGEN_PEQUENA CHAR(100) NOT NULL, #38px Ancho, 35px Alto
IMAGEN_PROX CHAR(100) NOT NULL, #65px Ancho, 40px Alto
ID_FORO INT NOT NULL,
LANZADO INT(1) NOT NULL
);
Código:
CREATE TABLE FICHA(
ID_FICHA INT UNSIGNED AUTO_INCREMENT PRIMARY KEY NOT NULL,
ID_TITULO INT NOT NULL, # FOREIGN KEY TITULO.ID_TITULO
ID_DESARROLADOR INT NOT NULL, # FOREIGN KEY DESARROLLADOR.ID_DESARROLLADOR
ID_GENERO INT NOT NULL, # FOREIGN KEY GENERO.ID_GENERO
ID_GENERO_DOS INT DEFAULT NULL, # FOREIGN KEY GENERO.ID_GENERO
ID_GENERO_TRES INT DEFAULT NULL, # FOREIGN KEY GENERO.ID_GENERO
DIA_LANZAMIENTO INT DEFAULT NULL,
MES_LANZAMIENTO INT DEFAULT NULL,
ANO_LANZAMIENTO INT DEFAULT NULL,
NUMERO INT DEFAULT NULL,
PLATAFORMA INT DEFAULT NULL,
IMAGEN_FICHA CHAR(255) NOT NULL, #100px Ancho, 120px Alto
EDAD_RECOMENDADA CHAR(30) DEFAULT NULL,
OTROS_NOMBRES CHAR(40) DEFAULT NULL
);
ALTER TABLE FICHA ADD FOREIGN KEY(ID_TITULO) REFERENCES TITULO(ID_TITULO);
ALTER TABLE FICHA ADD FOREIGN KEY(PLATAFORMA) REFERENCES PLATAFORMA(ID_PLATAFORMA);
ALTER TABLE FICHA ADD FOREIGN KEY(ID_DESARROLADOR) REFERENCES DESARROLLADOR(ID_DESARROLLADOR);
ALTER TABLE FICHA ADD FOREIGN KEY(ID_GENERO) REFERENCES GENERO(ID_GENERO);
ALTER TABLE FICHA ADD FOREIGN KEY(ID_GENERO_DOS) REFERENCES GENERO(ID_GENERO);
ALTER TABLE FICHA ADD FOREIGN KEY(ID_GENERO_TRES) REFERENCES GENERO(ID_GENERO);
Y eso esto para hacer el JOIN:
Código:
$consulta = "SELECT T.ID_TITULO, T.ID_CATEGORIA, T.TITULO, T.IMAGEN_PROX, T.LANZADO, F.ID_TITULO, F.DIA_LANZAMIENTO
FROM TITULO T INNER JOIN FICHA F ON T.ID_TITULO = F.ID_TITULO
WHERE T.LANZADO = 0
ORDER BY T.ID_TITULO DESC
LIMIT 10";
$resultado = mysql_query($consulta);
while($prox = mysql_fetch_array($resultado))
{
Mi duda es. ¿Por que no funciona? x'D. Creo que las llaves y todo esta bien, si solo extraigo informacion de una tabla no da error.
Ayuda plis.
Última edición por Myless; 16/01/2010 a las 19:14 |