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

टी-एसक्यूएल स्ट्रिंग फ़ंक्शंस:बाएं/दाएं और सबस्ट्रिंग और अजीब व्यवहार का उपयोग करने के बीच अंतर

आपके पास पिछली जगह हैं

राइट स्पेस देगा लेकिन LEN पीछे वाले स्पेस को नजरअंदाज कर देगा

DECLARE @foo varchar(100)
SET @foo = 'abc12345def   ' --3 spaces

--right or substring
SELECT RIGHT(@foo, 3)
SELECT SUBSTRING(@foo, LEN(@foo)-2, LEN(@foo))

--demonstrate you get spaces
SELECT REPLACE(RIGHT(@foo, 3), ' ', 'z') --single space

--length differences
SELECT LEN(@foo), DATALENGTH(@foo)

--solution
SELECT RIGHT(RTRIM(@foo), 3)
--or trim your column values before storing

देखें SET ANSI_PADDING

नोट:आप नहीं गैर NULL इनपुट के लिए NULL प्राप्त करें...

--only NULL if you send in NULL
SELECT RIGHT(NULL, 3)



  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. R DBI ODBC त्रुटि:nanodbc/nanodbc.cpp:3110:07009:[Microsoft] [SQL सर्वर के लिए ODBC ड्राइवर 13] अमान्य डिस्क्रिप्टर इंडेक्स

  3. SQL सर्वर:अल्पविराम से अलग किए गए मान प्राप्त करने के लिए ग्रुप बाय क्लॉज

  4. SQL सर्वर में समानार्थक शब्द का परिचय

  5. ssrs चार्ट के लिए sql क्वेरी एक्सप्रेशन में गैर-मौजूद मानों को संभालना