MySQL - Error en Consulta

   
Vista:

Error en Consulta

Publicado por Rodrigo (3 intervenciones) el 02/06/2015 22:53:15
Hola tengo que hacer una consulta de estas tres tablas:

Tabla productos:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
CREATE TABLE `productos` (
  `id_producto` INTEGER NOT NULL AUTO_INCREMENT,
  `referencia` VARCHAR(15),
  `id_marca` INTEGER COMMENT "Relación con marcas",
  `id_familia` INTEGER COMMENT "Relación con familias",
  `descripcion_1` VARCHAR(50) NOT NULL UNIQUE COMMENT "Español",
  `descripcion_2` VARCHAR(50) UNIQUE COMMENT "Inglés",
  `descripcion_3` VARCHAR(50) UNIQUE COMMENT "Alemán",
  `descripcion_4` VARCHAR(50) UNIQUE COMMENT "Francés",
  `descripcion_5` VARCHAR(50) UNIQUE COMMENT "Portugués",
  `descripcion_6` VARCHAR(50) UNIQUE COMMENT "Italiano",
  `ean13` INTEGER(13),
  `pvp` NUMERIC(10,3),
  `imagen1` VARCHAR(255),
  `imagen2` VARCHAR(255),
  `observaciones` VARCHAR(255),
  PRIMARY KEY (`id_producto`),
  FOREIGN KEY (`id_marca`) REFERENCES `marcas` (`id_marca`) ON DELETE RESTRICT ON UPDATE CASCADE,
  FOREIGN KEY (`id_familia`) REFERENCES `familias` (`id_familia`) ON DELETE RESTRICT ON UPDATE CASCADE
 ) ENGINE=innodb DEFAULT CHARSET=utf8;
 
SET autocommit=1;

Tabla marcas:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
CREATE TABLE `marcas` (
  `id_marca` INTEGER NOT NULL AUTO_INCREMENT,
  `marca` VARCHAR(40) NOT NULL UNIQUE,
  `web` VARCHAR(50) UNIQUE,
  `tarifa` VARCHAR(7),
  `logo` VARCHAR(255) UNIQUE,
  PRIMARY KEY (`id_marca`)
) ENGINE=innodb DEFAULT CHARSET=utf8;
 
SET autocommit=1;
 
INSERT INTO `marcas` (`marca`, `web`) VALUES
("NGK", "www.ngk-europe.com"),("Amolux", "www.amolux.net"),("EBC", "www.ebcbrakes.com"),("Vicma", "www.vicma.es"),("Gates", "www.gates.com"),
("Maxxis", NULL),("Piaggio", NULL),("FAG", NULL),("Michelin", NULL),("Barikit", NULL),("Bridgestone", NULL),("Metrakit", NULL),("Honda", NULL),
("JM Products", NULL),("Magura", NULL),("Vee Rubber", NULL),("Meteor", NULL),("Athena", "www.athenaiberica.es"),("RMS", "www.rms.it"),
("Pirelli", "www.pirelli.com"),("6-On", NULL),("Hiflofiltro", "www.hiflofiltro.com");

Tabla familias:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
CREATE TABLE `familias` (
  `id_familia` INTEGER NOT NULL AUTO_INCREMENT,
  `familia_1` VARCHAR(40) NOT NULL UNIQUE COMMENT "Español",
  `familia_2` VARCHAR(40) UNIQUE COMMENT "Inglés",
  `familia_3` VARCHAR(40) UNIQUE COMMENT "Alemán",
  `familia_4` VARCHAR(40) UNIQUE COMMENT "Francés",
  `familia_5` VARCHAR(40) UNIQUE COMMENT "Portugués",
  `familia_6` VARCHAR(40) UNIQUE COMMENT "Italiano",
  PRIMARY KEY (`id_familia`)
) ENGINE=innodb DEFAULT CHARSET=utf8;
 
SET autocommit=1;
 
INSERT INTO `familias` (`familia_1`) VALUES
("Bujía"),("Pastillas de freno"),("Reflectante"),("Junta"),("Batería"),("Actuador eléctrico"),("Limitador"),("Kit de cilindro"),
("Aceite de caja de cambios"),("Aceite de mezcla"),("Aceite de motor"),("Maneta"),("Cable de velocímetro"),("Kit de bomba de agua"),("Piloto Trasero"),("Bombilla"),
("Disco de freno"),("Zapatas de freno"),("Sonda Lambda"),("Kit de discos de embrague"),("Correa de transmisión"),("Correa de bomba de aceite");


Esta es la consulta que ejecuto:

1
2
3
Select * referencia,marca,familia,descripcion_1,ean13,pvp
FROM productos, marcas, familias
WHERE productos.id_marca=marcas.id_marca and productos.id_familia=familias.id_familia


Me da error y no se porque, que hago mal?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Error en Consulta

Publicado por Rodrigo (3 intervenciones) el 02/06/2015 23:08:42
Solucionado, perdon por las molestias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Error en Consulta

Publicado por xve (898 intervenciones) el 03/06/2015 08:23:41
Hola Rodrigo, nos podrías compartir donde estaba el error?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Error en Consulta

Publicado por Rodrigo (3 intervenciones) el 03/06/2015 19:52:35
El error estaba en la consulta, la consulta ideal seria esta:

1
2
SELECT `productos`.`id_producto`, `productos`.`referencia`, `productos`.`descripcion_1`, `productos`.`ean13`, `productos`.`pvp`, `familias`.`familia_1`, `marcas`.`marca`
FROM `productos`, `familias`, `marcas`
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar