Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-10-2004
Avatar de raffagia
raffagia raffagia is offline
Miembro
 
Registrado: sep 2004
Posts: 31
Poder: 0
raffagia Va por buen camino
Question consulta usando IF .. ELSE.. en un FROM

hola, , tengomun draam con un consulta,, ,, esta depende de un parametro,,, o sea,, si el parametro es 1, entra por el IF y si es = entra por el ELSe...
pero me tira error cerca de IF,,, estoy usando SQL server y BDE
cual es el problema-? no se puede usar un if adentro de un from???
bueno, muchas gracias por leer..
saludos
Raffa
Código:
CREATE PROCEDURE [DBO].[PRUEBVA2] (@tipo int)AS
SELECT tabla1.horario

FROM	

(
IF (@tipo = 0)		 SELECT	 *
					   FROM		  dbo.HORA
					   WHERE	  (dbo.HORA.horario <= '13') 
ELSE 
					   SELECT	*
					   FROM		  dbo.HORA 
					   WHERE	   (dbo.HORA.horario  >  '13')  
)
Responder Con Cita
  #2  
Antiguo 19-10-2004
Listirrinin Listirrinin is offline
Registrado
 
Registrado: ago 2004
Posts: 5
Poder: 0
Listirrinin Va por buen camino
UTILIZA EL CASE EN VEZ DEL IF
DE TODAS FORMAS SI EL SQL ES EL QUE PROPONES TE SUGIERO LO SIGUIENTE

CREATE PROCEDURE [DBO].[PRUEBVA2] (@tipo int)AS
SELECT tabla1.horario

FROM
SELECT *
FROM dbo.HORA
WHERE (dbo.HORA.horario <= '13' and @tipo = 0) OR (dbo.HORA.horario > '13' and @tipo<>0)
)



UTILIZACION DEL CASE....
NO LO HE PROBADO PERO YA QUE EL IF NO FUNCIONA.... PRUEBA LO SIGUIENTE:
CREATE PROCEDURE [DBO].[PRUEBVA2] (@tipo int)AS
SELECT tabla1.horario

FROM

(
CASE WHEN (@tipo = 0) THEN SELECT *
FROM dbo.HORA
WHERE (dbo.HORA.horario <= '13')
ELSE
SELECT *
FROM dbo.HORA
WHERE (dbo.HORA.horario > '13')

END
)
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 01:32:37.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi