Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

sql facil

Estas en el tema de sql facil en el foro de Oracle en Foros del Web. tengo un problemilla que no se resolver. tengo una select que me devuleve las garantias de un producto y queria que una nueva consulta que ...
  #1 (permalink)  
Antiguo 27/08/2012, 03:44
 
Fecha de Ingreso: septiembre-2007
Mensajes: 268
Antigüedad: 16 años, 7 meses
Puntos: 8
sql facil

tengo un problemilla que no se resolver.

tengo una select que me devuleve las garantias de un producto y queria que una nueva consulta que si un producto esta en la subconsulta devuelva 'S' y y sino esta 'N'.

Muchas y perdonen las molestias
  #2 (permalink)  
Antiguo 27/08/2012, 04:21
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: sql facil

¿Y cuáles son la consulta y la subconsulta?

Supongo que no pretenderás que adivinemos... ¿no?

Ten en cuenta que necesitamos valorar lo que tienes en la subconsulta para saber cómo armar ese SELECT...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 27/08/2012, 04:30
 
Fecha de Ingreso: septiembre-2007
Mensajes: 268
Antigüedad: 16 años, 7 meses
Puntos: 8
Respuesta: sql facil

Es una idea general.

Select productos.idProducto from productos, garantias

where ...

esta subconsulta devuelve todos los productos que tiene una garantia.

y lo que quiero es que los productos que tengan garantias, la select devuelve en una columna que tiene_garantias o no.

Muchas gracias por las molestias
  #4 (permalink)  
Antiguo 30/08/2012, 11:32
Avatar de juanmiguel  
Fecha de Ingreso: enero-2009
Mensajes: 18
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: sql facil

¿Esto?

SELECT productos.nombre, IF(garantias.tiene_garantia = 1, 'Tiene garantia', 'No tiene garantia') FROM productos, garantias

¡A ver si esto te ayuda!
  #5 (permalink)  
Antiguo 31/08/2012, 06:59
Avatar de Drako_18  
Fecha de Ingreso: mayo-2005
Ubicación: Madrid
Mensajes: 505
Antigüedad: 18 años, 11 meses
Puntos: 16
Respuesta: sql facil

SELECT productos.nombre, DECODE(garantias.tiene_garantia, 1, 'Tiene garantia', 'No tiene garantia') FROM productos, garantias
WHERE....

Puedes encontrarlo en esta web: http://www.techonthenet.com/oracle/functions/decode.php

La suelo usar muchísimo, es una de mis preferidas!

DECODE(CAMPO, VALOR1, 'MUESTRA ESTO SI CAMPO=VALOR1', 'SINO MUESTRA ESTO')
Puedes hacer como si fuera un IF - ELSE
DECODE(TIPO_DOCUMENTO, 'D', 'DNI', P, 'PASSAPORTE', 'OTRO TIPO DOCUMENTO')


Suerte y usemos San Google!
__________________
Rubén Espada
Desarrollador full stack .Net (Angular + JS + .Net Core)

Etiquetas: facil, select, sql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:36.