|
|
|
 |
Foros de Programacion - Cominidad de Programadores |
|
|
|
 |

31 de marzo,2005, 09:33
|
|
|
ayuda
Hola amigos, necesito que me ayuden a relizar una consulta sql que me mandaron como tarea:
teniendo en cuenta la siguiente tabla con estos atributos:
Tabla Ingrediente_Receta
-----------------------------------------------------------
|Receta | Ingrediente | Medida | Proporcion |
-----------------------------------------------------------
Clave Primaria: receta e ingrediente
Me piden hacer la consulta: Seleccionar las recetas "discrepantes", es decir que utilicen los mismos ingredientes, pero en distintas proporciones.
Y lo que tengo hecho es lo siguiente:
Select ir.receta,ir.ingrediente
From Ingrediente_Receta, Ingrediente_Receta ir
Where ir.receta <> Ingrediente_Receta.receta
and ir.ingrediente=Ingrediente_Receta.ingrediente
and ir.proporcion <> Ingrediente_Receta.proporcion
Funciona, pero no es lo que pide, al parecer me falta completarla con algo, que sera?
Utilizo sql server
Les agradezco de antemano,
saludos,
alvin
|

31 de marzo,2005, 09:34
|
|
|
Re: ayuda
Bueno si dices q funciona solo te faltaria un group by al final de tu consulta...
selec...
GROUP BY ir.receta, ir.ingrediente
No entiendo bien tu consulta, pues si tienes dos recetas distintas q usan las mismos ingredientes y en proporciones iguales, cual escojo??
Cree una tabla asi pero no se si sera correcta para ti...
CREATE TABLE INGREDIENTE_RECETA
(
receta VARCHAR(20),
ingrediente INT,
Medida INT,
proporcion INT,
CONSTRAINT ingrediente_receta_PK PRIMARY KEY (receta,ingrediente)
)
GO
INSERT INTO INGREDIENTE_RECETA VALUES ('A',1,2,3)
INSERT INTO INGREDIENTE_RECETA VALUES ('B',1,1,5)
INSERT INTO INGREDIENTE_RECETA VALUES ('A',2,3,1)
INSERT INTO INGREDIENTE_RECETA VALUES ('B',2,3,4)
INSERT INTO INGREDIENTE_RECETA VALUES ('C',1,1,1)
INSERT INTO INGREDIENTE_RECETA VALUES ('A',3,4,2)
INSERT INTO INGREDIENTE_RECETA VALUES ('B',3,1,5)
INSERT INTO INGREDIENTE_RECETA VALUES ('C',2,2,5)
INSERT INTO INGREDIENTE_RECETA VALUES ('A',3,5,3)
INSERT INTO INGREDIENTE_RECETA VALUES ('C',3,5,4)
INSERT INTO INGREDIENTE_RECETA VALUES ('D',1,2,3)
INSERT INTO INGREDIENTE_RECETA VALUES ('E',1,2,4)
en todo caso me dices para verlo ok.
Cita:
|
Iniciado por alvin
Hola amigos, necesito que me ayuden a relizar una consulta sql que me mandaron como tarea:
teniendo en cuenta la siguiente tabla con estos atributos:
Tabla Ingrediente_Receta
-----------------------------------------------------------
|Receta | Ingrediente | Medida | Proporcion |
-----------------------------------------------------------
Clave Primaria: receta e ingrediente
Me piden hacer la consulta: Seleccionar las recetas "discrepantes", es decir que utilicen los mismos ingredientes, pero en distintas proporciones.
Y lo que tengo hecho es lo siguiente:
Select ir.receta,ir.ingrediente
From Ingrediente_Receta, Ingrediente_Receta ir
Where ir.receta <> Ingrediente_Receta.receta
and ir.ingrediente=Ingrediente_Receta.ingrediente
and ir.proporcion <> Ingrediente_Receta.proporcion
Funciona, pero no es lo que pide, al parecer me falta completarla con algo, que sera?
Utilizo sql server
Les agradezco de antemano,
saludos,
alvin
|
|

31 de marzo,2005, 09:34
|
|
|
Re: ayuda
Gracias por tu interes.
Aca te muestro como tengo creada la tabla:
Create Table Ingrediente_Receta
(
receta int not null,
ingrediente varchar(40) not null,
medida varchar(40) not null,
proporcion varchar(40) not null
Primary Key (receta,ingrediente)
Foreign Key (receta) References Receta (numero),
Foreign Key (ingrediente) References Ingrediente (nombre),
CHECK (medida IN ('taza','cucharada','cucharadita','unidad','centim etro cubico',
'litro','gramo','kilo'))
)
Y lo que me piden es que resuelva la siguiente consulta que abarca solo esta tabla:
Seleccionar las recetas "discrepantes", es decir que utilicen los mismos ingredientes, pero en distintas proporciones.
Lo que necesitaria es la consulta SQL
saludos,
alvin
Cita:
|
Iniciado por enrique
Bueno si dices q funciona solo te faltaria un group by al final de tu consulta...
selec...
GROUP BY ir.receta, ir.ingrediente
No entiendo bien tu consulta, pues si tienes dos recetas distintas q usan las mismos ingredientes y en proporciones iguales, cual escojo??
Cree una tabla asi pero no se si sera correcta para ti...
CREATE TABLE INGREDIENTE_RECETA
(
receta VARCHAR(20),
ingrediente INT,
Medida INT,
proporcion INT,
CONSTRAINT ingrediente_receta_PK PRIMARY KEY (receta,ingrediente)
)
GO
INSERT INTO INGREDIENTE_RECETA VALUES ('A',1,2,3)
INSERT INTO INGREDIENTE_RECETA VALUES ('B',1,1,5)
INSERT INTO INGREDIENTE_RECETA VALUES ('A',2,3,1)
INSERT INTO INGREDIENTE_RECETA VALUES ('B',2,3,4)
INSERT INTO INGREDIENTE_RECETA VALUES ('C',1,1,1)
INSERT INTO INGREDIENTE_RECETA VALUES ('A',3,4,2)
INSERT INTO INGREDIENTE_RECETA VALUES ('B',3,1,5)
INSERT INTO INGREDIENTE_RECETA VALUES ('C',2,2,5)
INSERT INTO INGREDIENTE_RECETA VALUES ('A',3,5,3)
INSERT INTO INGREDIENTE_RECETA VALUES ('C',3,5,4)
INSERT INTO INGREDIENTE_RECETA VALUES ('D',1,2,3)
INSERT INTO INGREDIENTE_RECETA VALUES ('E',1,2,4)
en todo caso me dices para verlo ok.
Cita:
|
Iniciado por alvin
Hola amigos, necesito que me ayuden a relizar una consulta sql que me mandaron como tarea:
teniendo en cuenta la siguiente tabla con estos atributos:
Tabla Ingrediente_Receta
-----------------------------------------------------------
|Receta | Ingrediente | Medida | Proporcion |
-----------------------------------------------------------
Clave Primaria: receta e ingrediente
Me piden hacer la consulta: Seleccionar las recetas "discrepantes", es decir que utilicen los mismos ingredientes, pero en distintas proporciones.
Y lo que tengo hecho es lo siguiente:
Select ir.receta,ir.ingrediente
From Ingrediente_Receta, Ingrediente_Receta ir
Where ir.receta <> Ingrediente_Receta.receta
and ir.ingrediente=Ingrediente_Receta.ingrediente
and ir.proporcion <> Ingrediente_Receta.proporcion
Funciona, pero no es lo que pide, al parecer me falta completarla con algo, que sera?
Utilizo sql server
Les agradezco de antemano,
saludos,
alvin
|
|
|
| Herramientas |
|
|
| Desplegado |
Mode Lineal
|
Normas de Publicación
|
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes
Las caritas están Activado
El codigo [IMG] está Activado
Código HTML está Desactivado
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
www.programatium.com© 1999 - web esta optimizada para Microsoft explorer 6.0
|
|
|
|
|
|
Content Relevant URLs by vBSEO 3.2.0
|