Hola a todos, creo que el titulo lo deja claro :p
necesito hacer esto...
SELECT * FROM <table> WHERE
IF <CONDICION>
VARIABLE = algo
END IF
en plsql se puede hacer, en transact se puede? como?
ojala me puedan ayudar.
saludooooooos
| ||||
Re: poner condicion en where
Código:
Saludos! Select * from Mitabla Where (Case When MiCondicion Then Algo Else OtraCosa End) = ResultadoCondicion
__________________ La sencillez y naturalidad son el supremo y último fin de la cultura... -- MCTS : SQL Server 2008, .NET Framework 3.5, ASP.NET Applications. |
| ||||
Re: poner condicion en where genial .... Andres95 les dejo la solucion para futuros post :)
Código:
en este caso uso una vista... pero es lo mismoSELECT * FROM VwEdicionTrabajosTerminados WHERE 1 = 1 and CodContratista = (CASE when @CodContratista IS NOT NULL THEN @CodContratista ELSE CodContratista END) AND LoginOperador = (CASE WHEN @LoginOperador IS NOT NULL THEN @LoginOperador ELSE LoginOperador END) and SectorTra = (CASE WHEN @SectorTra IS NOT NULL THEN @SectorTra ELSE SectorTra END) and CodEstadoTrans = (CASE WHEN @CodEstadoTrans IS NOT NULL THEN @CodEstadoTrans ELSE CodEstadoTrans END) and TipoTra = (CASE WHEN @TipoTra IS NOT NULL THEN @TipoTra ELSE TipoTra END) and CorrelativoTra is not null saludos
__________________ ..:: NADA SE PIERDE SOLO SE TRANSFORMA ::.. |
| ||||
Re: poner condicion en where Si usas algo como esto: Cita: Creo que cumple la misma función pero hace mas rápida la consulta.USE Northwind GO DECLARE @CategoryID INT SET @CategoryID = NULL SELECT * FROM dbo.Categories WHERE (@CategoryID IS NULL OR CategoryID = @CategoryID) SET @CategoryID = 1 SELECT * FROM dbo.Categories WHERE (@CategoryID IS NULL OR CategoryID = @CategoryID) Saludos.
__________________ Martín Alexis Valdivia S. ----------------------------- "Quisiéramos cambiar el mundo, pero Dios no nos daría el código fuente." CAP "Si Saber No Es Un Derecho, Seguro Será Un Izquierdo." WD |