Esta es mi consulta
Código MySQL:
Ver original
Cita:
Editado: Código de programación no permitido en foros de Bases de Datos. Leer las normas del foro, por favor.
| |||
Consulta de codigo Buenos dias tengo un problema que no se como resolver tengo un mismo código asociado a varios equipos, me explico dentro de una maleta vienen varios equipos como laptop,modem, teclados, etc. Necesito que al hacer la consulta de el código de la maleta me muestre la cantidad y la descripción de cada una de las cosas que esta contenida dentro de la maleta. Esta es mi consulta
Código MySQL:
Ver original Cita: Editado: Código de programación no permitido en foros de Bases de Datos. Leer las normas del foro, por favor. |
| |||
Respuesta: Consulta de codigo Tengo una tabla llamada despacho en ella se almacena el código de la maleta,el código del equipo, la descripcion del equipo y la dirección donde se envía. Me refiero a un baúl donde dentro de ella van x cantidad de equipos. Al hacer la consulta de la tabla despacho como la que mostre en la pregunta anterior aparte de mostrarme la informacion que ya me da con la consulta quiero que me de la descripcion de los equipos que van dentro de los baúles o maletas. Y la cantidad de cada uno de esos equipos. Se entiende o no? |
| ||||
Respuesta: Consulta de codigo Se entiende perfectamente. La duda es: ¿en donde guardas el DETALLE de los equipos que están dentro de esa "maleta"? Estás hablando de una descripción de equipos, pero no vemos dónde la almacenas, ni cómo se relaciona con la maleta en cuestión. No podemos diseñar una consulta que cumpla lo que quieres sin entender cómo lo almacenas. Las tablas las estás viendo tu, no nosotros. Postea, por favor, la estructura (CREATE TABLE) de las tablas que usas en esa consulta. Si no sabes como obtener el CREATE TABLE, es simple: Usas SHOW CREATE TABLE y con eso MySQL devolvera lo que necesitamos, por ejemplo:
Código MySQL:
y así con cada una de las tablas. Ver original
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |
| ||||
Respuesta: Consulta de codigo OK, ahora bien, ¿dónde aparecen en tu modelo de datos los componentes contenidos en el despacho? No se ve ninguno dato que parezca estar relacionado con teclados, mouses o lo que fuese. ¿Cómo haces para saber qué hay dentro de esa maleta? Ten en cuenta que sin poder identificar esos componentes, no podemos ni contarlos ni sumarlos... Por otro lado te remarco lo que te dije: Cita: Es decir, usa esa misma sentencia con todas las tablas involucradas en el caso. No hagas un simple copy+Paste... y así con cada una de las tablas.
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |
| |||
Respuesta: Consulta de codigo En Desde_Código se guarda si es teclado,mouse, laptop etc. Lo que veo es que deberia de agregarle un campo donde se almacene la cantidad de los equipos para así poder contarlos no? Yo agrego varios objetos con un mismo código en maleta pero la descripción de los códigos será distinta, quiero que al consultar el código maleta me muestre cada uno de los Desde_Código agregados para el mismo código maleta i |
| ||||
Respuesta: Consulta de codigo Cita: No, desde el punto de vista de base de datos eso es un error de los severos. Es precisamente a ESO a lo que me referia con un error de diseño.En Desde_Código se guarda si es teclado,mouse, laptop etc. Lo que veo es que deberia de agregarle un campo donde se almacene la cantidad de los equipos para así poder contarlos no? Yo agrego varios objetos con un mismo código en maleta pero la descripción de los códigos será distinta, quiero que al consultar el código maleta me muestre cada uno de los Desde_Código agregados para el mismo código maleta i Estás planteandote la base de datos con lógica de programación, y no es lo mismo. Si lo haces de ese modo terminarás generando información redundante e inconsistente. Lo que necesitas es un conjunto de tablas que administren las relaciones de una forma eficiente y consistente. Lo que tienes es: - Despachos de 1 o N maletas, a 1 o N municipios. - Maletas, que se despachan conteniendo 1 o N componentes. - Uno o N componentes de cada maleta. - N cantidad de componentes en existencias. - Cada componente perteneciente a una X categoría. En ese caso hay tablas como: - Municipio - Despacho. - Despacho_maletas. - Maleta. - Detalle_Maleta - Componente. - Categoria. Esto por lo menos. Voy a ahacer una suposición de que un Despacho es algo diferente a una maleta, y que un mismo despacho puede relacionarse con N maletas. No se si se da, pero lo planteo así Detalle_Maleta es la tabla que administra la relación de qué hay y que cantidad. Tiene una relación de cardinalidad 1:N con maleta, y de 1:1 con Componente. Componente a su vez tiene una relación N:1 con categoría, por que en Componente almacenarías uno a uno los objetos individuales, mientras que en categoría especificarías qué tipo de objeto es (laptop, mouse, teclado, etc.) Con un esquema así, calcular cuántos componentes y de qué tipo tiene cada maleta es sencillo. Supongamos que quieres ver cuántos componentes hay en cada maleta.
Código MySQL:
O si van cantidades diferentes del mismo componente en la maleta, y quieres saber las categorías diferentes, sería mas o menos:Ver original
Código MySQL:
Ver original Podemos seguir, pero si estás planteando las tablas de esa forma es que no has profundizado en el paradigma relacional, y tu base no cumple con los fundamentos del modelo Entidad-Relación. ¿Has verificado eso? Nota: Si estas consultas te resultan complicadas, deberías ver las que usamos en la emrpesa, en el mundo real... ![]()
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |
Etiquetas: |