با تابع REVERSE در SQL Server: راهنمای کامل معکوس کردن رشتههای متنی
تابع REVERSE در SQL Server ابزاری قدرتمند برای معکوس کردن ترتیب کاراکترها در یک رشته متنی است. این تابع با تغییر دادن ترتیب حروف از انتها به ابتدا، میتواند در سناریوهای مختلفی مانند پاکسازی دادهها، بررسی پالیندرمها، یا ایجاد رمزگذاریهای ساده مفید باشد. REVERSE یک تابع رشتهای است که ورودی را به عنوان یک رشته دریافت کرده و خروجی را نیز به صورت یک رشته معکوس شده برمیگرداند.
نحوه استفاده از تابع REVERSE بسیار ساده است و فقط یک پارامتر برای ورودی میپذیرد. ساختار کلی آن به صورت زیر است:
REVERSE ( input_string )
در اینجا، input_string رشتهای است که میخواهید آن را معکوس کنید. این ورودی میتواند یک ثابت، یک متغیر، یا یک ستون از جدول باشد.
مثالهای کاربردی تابع REVERSE در SQL Server
در ادامه، با چندین مثال کاربردی، نحوه استفاده از تابع REVERSE را در سناریوهای مختلف بررسی میکنیم.
مثال 1: معکوس کردن یک رشته ساده
این مثال، نحوه معکوس کردن یک رشته ثابت را نشان میدهد:
SELECT REVERSE('SQL REVERSE FUNCTION');
مثال 2: رفتار REVERSE با ورودی NULL
اگر ورودی تابع REVERSE مقدار NULL باشد، خروجی نیز NULL خواهد بود:
SELECT REVERSE(NULL);
مثال 3: معکوس کردن مقادیر عددی
تابع REVERSE برای رشتهها طراحی شده است. اگر یک مقدار عددی به آن بدهید، SQL Server ابتدا آن را به رشته تبدیل کرده و سپس معکوس میکند. به همین دلیل، خروجی همچنان از نوع رشتهای خواهد بود:
SELECT REVERSE(12345);
مثال 4: معکوس کردن مقادیر DATETIME
مشابه مقادیر عددی، اگر یک مقدار DATETIME به تابع REVERSE بدهید، SQL Server ابتدا آن را به یک رشته تبدیل کرده و سپس معکوس میکند. خروجی در این حالت نیز یک رشته خواهد بود:
SELECT REVERSE(GETDATE());
مثال 5: استفاده از REVERSE با دستور SELECT
میتوانید تابع REVERSE را مستقیماً در دستور SELECT برای معکوس کردن دادههای یک ستون خاص به کار ببرید. در این مثال، فرض میکنیم جدولی به نام Employees با ستونی به نام FirstName داریم و میخواهیم نامها را معکوس کنیم:
SELECT FirstName, REVERSE(FirstName) AS ReversedName
FROM Employees;
مثال 6: استفاده از REVERSE با دستور UPDATE
تابع REVERSE میتواند در دستورات UPDATE برای تغییر دادهها در یک ستون به کار رود. این مثال یک سناریوی فرضی را نشان میدهد که در آن میخواهیم نامهای ستون FirstName را در جدول Employees معکوس کنیم:
UPDATE Employees
SET FirstName = REVERSE(FirstName);
مثال 7: استفاده از REVERSE با عبارت WHERE
میتوانید از REVERSE در عبارت WHERE برای فیلتر کردن ردیفها بر اساس شرط معکوس بودن استفاده کنید. این مثال، کارمندانی را پیدا میکند که نام معکوس شده آنها با ‘h’ شروع میشود:
SELECT FirstName
FROM Employees
WHERE REVERSE(FirstName) LIKE 'h%';
مثال 8: استفاده از REVERSE برای بررسی پالیندرم
یکی از کاربردهای جالب REVERSE، بررسی اینکه آیا یک رشته یک پالیندرم (کلمهای که از جلو و عقب یکسان خوانده میشود) است یا خیر، میباشد. این مثال نشان میدهد چگونه میتوان یک پالیندرم را تشخیص داد:
SELECT CASE WHEN 'madam' = REVERSE('madam') THEN 'Is Palindrome' ELSE 'Is Not Palindrome' END AS PalindromeCheck;
SELECT CASE WHEN 'hello' = REVERSE('hello') THEN 'Is Palindrome' ELSE 'Is Not Palindrome' END AS PalindromeCheck;