Ver Mensaje Individual
  #3 (permalink)  
Antiguo 06/06/2013, 07:03
chueke
 
Fecha de Ingreso: mayo-2011
Mensajes: 17
Antigüedad: 13 años, 8 meses
Puntos: 2
Respuesta: Order by / Case

Cita:
Iniciado por Libras Ver Mensaje
puedes poner tu codigo cuando realizas el string?
Código SQL:
Ver original
  1. ALTER PROCEDURE [dbo].[bus_pal]
  2.     -- Add the parameters for the stored procedure here
  3.     @clave NVARCHAR(50),
  4.     @PageNumber INT,
  5.     @marc NVARCHAR(50) = NULL,
  6.     @prc NVARCHAR(50) = NULL
  7.    
  8. AS
  9. BEGIN
  10.     -- SET NOCOUNT ON added to prevent extra result sets from
  11.     -- interfering with SELECT statements.
  12.     SET NOCOUNT ON;
  13.  
  14.     -- Insert statements for procedure here
  15.     DECLARE @SQLString NVARCHAR(500)
  16.     DECLARE @ParmDefinition NVARCHAR(500)
  17.  
  18.     /* Cadena */
  19.     SET @SQLString = N'SELECT RXFAM1, RXFAM2, RXFAM3, PSPREC, VMVNNM FROM (SELECT RXFAM1, RXFAM2, RXFAM3, RXFAM4, PSPREC, VMVNNM, ROW_NUMBER() OVER (ORDER BY CASE WHEN @marc = ''ok'' THEN VMVNNM END ASC, CASE WHEN @prc = ''desc'' THEN PSPREC END DESC, CASE WHEN @prc = ''asc'' THEN PSPREC END ASC) AS Recursos FROM Recursos WHERE CPA01 LIKE  @clave + ''%'') AS Resultados WHERE Recursos BETWEEN 8 * @PageNumber  + 1 AND 8 * (@PageNumber + 1)'
  20.     /* Formato del/los parámetros */
  21.     SET @ParmDefinition = N'@clave NVARCHAR(50),@PageNumber INT,@marc NVARCHAR(50),@prc NVARCHAR(50)'
  22.  
  23.     EXEC sp_executesql @SQLString, @ParmDefinition, @clave, @PageNumber, @marc, @prc;
  24.  
  25. END