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

संग्रहीत प्रक्रिया से केवल अंतिम चयन परिणाम लौटाएं

तालिका चर का प्रयोग करें:

create procedure xxxSearch @a nvarchar(80), @b nvarchar(80)...
as 
begin
  DECLARE @res TABLE(...)
  INSERT INTO @res(...)
  select whatever 
    from MyTable t
    where ((@a is null and t.a is null) or (@a = t.a)) and
          ((@b is null and t.b is null) or (@b = t.b))...

    if @@ROWCOUNT = 0
    begin
        INSERT INTO @res(...)
        select whatever 
          from MyTable t
          where ((@a is null) or (@a = t.a)) and
                ((@b is null) or (@b = t.b))...
          if @@ROWCOUNT = 0
          begin
             ...
          end
    end
    SELECT ... FROM @res
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 सर्वर के अंदर नियमित अभिव्यक्ति

  2. संग्रहीत प्रक्रिया में सम्मिलित \ हटाए गए तालिका का उपयोग कैसे करें?

  3. क्लस्टर्ड इंडेक्स कॉलम पर गैर-क्लस्टर इंडेक्स प्रदर्शन में सुधार करता है?

  4. एसक्यूएल क्वेरी में गतिशील रूप से जेनरेट किए गए कॉलम शीर्षक

  5. क्या किसी स्तंभ को संदर्भित करने वाले आँकड़े उस स्तंभ को गिराए जाने से रोकते हैं?