elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  Bases de Datos (Moderador: Carloswaldo)
| | | |-+  problema con consulta
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: problema con consulta  (Leído 2,809 veces)
m@o_614


Desconectado Desconectado

Mensajes: 389


Ver Perfil
problema con consulta
« en: 30 Mayo 2014, 03:32 am »

Saludos tengo las siguientes tablas

BAR(id,nombre)
CERVEZA(id,nombre)
CLIENTE(id,nombre)
SIRVE(idBAR,idCERVEZA)
ASISTE(idCLIENTE,idBAR)
GUSTA(idCLIENTE,idCERVEZA)

y tengo la consulta que dice nombrar los nombres de las cervezas que no se sirven en el bar 'TARROS'

lo que llevo es esto:

SELECT c.nombre FROM BAR AS b, CERVEZA AS c, SIRVE AS s
WHERE c.id=s.idCERVEZA AND b.id=s.idBAR AND b.nombre='TARROS'

pero a partir de ahi ya no se como seguir

gracias


En línea

elezekiel

Desconectado Desconectado

Mensajes: 246


Ver Perfil
Re: problema con consulta
« Respuesta #1 en: 30 Mayo 2014, 04:53 am »

Creaste la consulta y te une las cervezas que se sirven en el Bar, para hacer las que NO se sirven en el bar tenes que hacer asi

Código:
Select idCerveza  from Sirve
Where BAR.idBAR <> Sirve.IdBAR

Adaptalo a tu codigo y funcionara.

Lo que hace es comparar el id del bar que se selecciona y le pide que muestre el id de la cerveza siempre y cuando NO coincida con el ID del Bar(en tabla SIRVE).


PD: cuando intentas "acortar" los nombres de tablas al inicio de la consulta la hace mas tediosa entender, es un consejo nomas!

Saluddddd


« Última modificación: 30 Mayo 2014, 05:15 am por elezekiel » En línea

m@o_614


Desconectado Desconectado

Mensajes: 389


Ver Perfil
Re: problema con consulta
« Respuesta #2 en: 30 Mayo 2014, 06:56 am »

muchas gracias elezekiel por tu respuesta, una ultima duda si la consulta dice:

Combinando una proyección y un producto cartesiano listar los nombres de todas las personas a las que les guste la cerveza 'HEINEKEN'. yo si se lo que es un producto cartesiano pero no se a que se refiere con proyeccion, entonces hice lo siguiente

SELECT p.nombre
FROM CLIENTE AS p, CERVEZA AS c, GUSTA AS g
WHERE g.idCLIENTE=p.id AND g.idCERVEZA=c.id
AND c.nombre = 'HEINEKEN';

pero no se si estoy en lo correcto

de nuevo gracias
En línea

elezekiel

Desconectado Desconectado

Mensajes: 246


Ver Perfil
Re: problema con consulta
« Respuesta #3 en: 30 Mayo 2014, 17:06 pm »

La proyeccion es cuando seleccionas x cantidad de registros de una tabla, es decir, cuando colocas:

Código:
Select * From BAR

Ahi no haces proyeccion, la proyeccion la haces asi:

Código:
Select idCerveza  from Sirve
Where BAR.idBAR <> Sirve.IdBAR

Pasandotelo en limpio es cuando seleccionas un campo(atributo) o varios (de la relacion en cuestion) pero no usas el "global" (*)

No se si me entendiste.. ya de ahi podes finalizar tu consulta!

Saluuddd
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema con una consulta SQL
Bases de Datos
_CrisiS_ 2 3,176 Último mensaje 18 Febrero 2010, 23:38 pm
por _CrisiS_
Problema con una consulta
PHP
TheMaker 1 2,181 Último mensaje 20 Julio 2010, 15:49 pm
por MinusFour
Problema con consulta SQL
Java
.:UND3R:. 0 1,549 Último mensaje 20 Octubre 2013, 03:44 am
por .:UND3R:.
Problema con consulta IF
Programación C/C++
jaxoR 3 2,116 Último mensaje 2 Diciembre 2013, 15:31 pm
por jaxoR
[SQL] Problema con consulta
Programación General
darknlee 6 2,397 Último mensaje 29 Enero 2014, 14:19 pm
por darknlee
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines