Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

छँटाई हमेशा एक ही परिणाम देता है

हम क्लॉज के अनुसार डायनेमिक कॉलम पास नहीं कर सकते हैं

तो यह

 Create procedure usp_GetBills
@PageNo         INT = 1,
@PageSize       INT = 10,
@SortOrder      INT = 1,
@SortColumn     VARCHAR(20) = ''
AS
BEGIN
DECLARE
@lSortColumn   VARCHAR(20),
@lFirstRec      INT,
@lLastRec       INT

SET @SortColumn = LTRIM(RTRIM(@SortColumn))
SET @lFirstRec  = (@PageNo - 1) *@PageSize
SET @lLastRec   = (@PageNo * @PageSize + 1)

;WITH CTE_Results 
AS(
SELECT ROW_NUMBER() OVER (ORDER BY(
@SortColumn))
AS ROWNUM,P.BillNo, P.PropertyNo, P.BillDate,  P.BillFromDate, P.BillToDate, P.BillAmount, P.DueDate, P.Status 
FROM Bill P)
SELECT * from CTE_Results
WHERE ROWNUM > @lFirstRec
AND ROWNUM   < @lLastRec
ORDER BY 
--ROWNUM * @SortOrder
CASE WHEN @SortIndex = 1 THEN BillNo END ASC,
CASE WHEN @SortIndex = 2 THEN BillNo END DESC, 
CASE WHEN @SortIndex = 1 THEN PropertyNo END ASC 
CASE WHEN @SortIndex = 2 THEN PropertyNo END DESC 

END



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर के लिए Microsoft ODBC ड्राइवर 13:उपयोगकर्ता 'sa' के लिए लॉगिन विफल

  2. SQL:दूसरी तालिका के आधार पर एक कॉलम के हिस्से को कई पंक्तियों में बदलें

  3. Jqgrid पेजिनेशन के लिए डेटा लाने के लिए संग्रहित प्रक्रिया लिखने में कठिनाई

  4. SQL सर्वर 2008 में हिब्रू मान सम्मिलित करना

  5. SQL सर्वर (sqlsrv) के लिए Laravel। [पीडीओएक्सप्शन] ड्राइवर नहीं ढूंढ सका