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

[SOLUCIONADO] Como realizar un select con un if ?

Estas en el tema de Como realizar un select con un if ? en el foro de SQL Server en Foros del Web. Hola gente, quiero seleccionar todos los campos de una tabla pero cuando el campo de la tabla llamado typeWager sea igual a "PARLAY" realizar una ...
  #1 (permalink)  
Antiguo 16/01/2014, 10:29
Avatar de adryan310  
Fecha de Ingreso: septiembre-2012
Mensajes: 450
Antigüedad: 12 años, 2 meses
Puntos: 3
Pregunta Como realizar un select con un if ?

Hola gente,

quiero seleccionar todos los campos de una tabla pero cuando el campo de la tabla llamado typeWager sea igual a "PARLAY" realizar una accion diferente, quiero seleccionar todos los campos osea el select me tiene que devolver todos sin importar el typeWager pero cuando el typeWager sea el que describi hacer un select de otra forma, deseo hacerlo todo en un mismo select espero explicarme bien... gracias
  #2 (permalink)  
Antiguo 16/01/2014, 10:51
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: Como realizar un select con un if ?

ya viste lo de hacerlo con un case? cuales serian las condiciones de tu query?
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 16/01/2014, 10:59
Avatar de adryan310  
Fecha de Ingreso: septiembre-2012
Mensajes: 450
Antigüedad: 12 años, 2 meses
Puntos: 3
Exclamación Respuesta: Como realizar un select con un if ?

Amigo lo que quiero es hacer un select de todos los datos de la tabla wager, si el campo llamado typeWager de la tabla wager es igual a "PARLAY" entonces hacer un select a otra tabla y realizar algunas otras cosas diferentes, pero al final unir los datos del select normal + el select que hago cuando el typeWager es igual a "PARLAY", no se como hacerlo cualquier ayuda me serviria de mucho gracias
  #4 (permalink)  
Antiguo 16/01/2014, 11:02
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: Como realizar un select con un if ?

podrias poner un pequeño ejemplo de tus datos y que es lo que quieres, porque la verdad no entiendo bien tu requerimiento
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #5 (permalink)  
Antiguo 16/01/2014, 11:14
Avatar de adryan310  
Fecha de Ingreso: septiembre-2012
Mensajes: 450
Antigüedad: 12 años, 2 meses
Puntos: 3
Exclamación Respuesta: Como realizar un select con un if ?

Este es mi select, me funciona bien,
Código SQL:
Ver original
  1. SELECT CONVERT(VARCHAR(8), G.[GradedDate] , 108) AS 'Time',
  2.        CONVERT(VARCHAR(MAX),G.[VisitorNumber]) + '/' + CONVERT(VARCHAR(MAX),G.[HomeNumber]) AS 'NumGame', G.[VisitorTeam] + ' @ ' +G.[HomeTeam] AS 'Teams', P.[PeriodDescription],
  3.        CONVERT(VARCHAR(MAX),G.[VisitorScore]) + ' - ' + CONVERT(VARCHAR(MAX),G.[HomeScore]) AS 'Score', COUNT(*) AS 'Tickets',
  4.        SUM(H.[RiskAmount]) AS 'Risk', A.[Agent], D.[RESULT], SUM(H.[WinAmount]) AS 'Win', D.[IdGame], W.[Description]
  5. FROM GRADEDWAGERHEADER H, GRADEDWAGERDETAIL D, GRADEDGAME G, PERIOD P, AGENT A, WAGERTYPE W
  6. WHERE H.[IdWager] = D.[IdWager] AND
  7.       D.[IdGame]  = G.[IdGame]  AND
  8.       H.[IdAgent] = A.[IdAgent] AND
  9.       H.[IdWagerType] = W.[IdWagerType] AND
  10.       H.[SettledDate] >= CONVERT(datetime,('2014-01-12 00:00:01')) AND
  11.       H.[SettledDate] <= CONVERT(datetime,('2014-01-12 23:59:59')) AND
  12.       D.[IdSport] = P.[IdSport] AND
  13.       D.[Period]  = P.[NumberOfPeriod] AND
  14.       H.[IdAgent] = 5585
  15. GROUP BY G.[GradedDate], G.[VisitorNumber], G.[HomeNumber], G.[VisitorTeam], G.[HomeNumber], G.[HomeTeam],
  16.          P.[PeriodDescription], G.[VisitorScore], G.[HomeScore], A.[Agent],D.[RESULT], D.[IdGame], W.[Description]
Pero en W.[Description] me devuelve si es "PARLAY" u otra cosa. La cuestion es que si es "PARLAY" quiero hacer otro select y lo que me devuelva ese select unirlo con este. gracias.
  #6 (permalink)  
Antiguo 16/01/2014, 11:16
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: Como realizar un select con un if ?

pues podrias hacer esto:

Código SQL:
Ver original
  1. SELECT * FROM tabla
  2. UNION
  3. SELECT * FROM tabla WHERE campo='parlay'

tomando en cuenta que en los 2 selects debes de regresar el mismo numero de campos y con el mismo tipo de datos
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #7 (permalink)  
Antiguo 16/01/2014, 11:19
Avatar de adryan310  
Fecha de Ingreso: septiembre-2012
Mensajes: 450
Antigüedad: 12 años, 2 meses
Puntos: 3
De acuerdo Respuesta: Como realizar un select con un if ?

voy a probar amigo y te comento como me fue...

Etiquetas: select, sqlserver2008
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 15:53.