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

Sp_executesql . में LIKE का उपयोग करना

निम्नलिखित मेरे लिए काम करता है

declare @name varchar(50)

set @name = 'WAITFOR'


exec sp_executesql 
  N'select * from sys.messages WHERE text  LIKE ''%'' + @name + ''%''', 
  N'@name varchar(50)',
  @example@sqldat.com

मुझे लगता है कि समस्या कहीं और होनी चाहिए।

संपादित करें: आपके अपडेट के बाद आपको उपयोग करने की आवश्यकता है

exec sp_executesql 
  N'SET @name = ''%'' + @name + ''%'';
    SELECT *
    FROM Tbl_Persons WHERE 1 = 1  AND lastname LIKE @name', 
  N'@name nvarchar(50)',
  @example@sqldat.com

जैसा कि यह खड़ा है आप वास्तविक सबस्ट्रिंग वाले पाठ की खोज कर रहे हैं @name




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एक शर्त के अनुसार प्रतिध्वनि छवि

  2. एसक्यूएल सर्वर कनेक्शन स्ट्रिंग में कनेक्ट टाइमआउट क्या है?

  3. रैंड () SQL सर्वर में उदाहरण

  4. फ़ाइल नाम पैरामीटर के साथ बल्क इंसर्ट

  5. SQL सर्वर (T-SQL) में डेटाबेस मेल खाता हटाएं