سرفصل‌های آموزشی
آموزش SQL و MySQL
آشنایی با مفهوم Alias در زبان SQL

آشنایی با مفهوم Alias در زبان SQL

هنگام بازیابی اطلاعات از دیتابیس می‌توان برای یکی از فیلدهای جدولی خاص نامی مستعار و در عین حال موقت در نظر گرفت که این نام اصطلاحاً Alias نامیده می‌شود که برای این کار می‌توان از سینتکس زیر استفاده کرد:

SELECT column_name AS alias_name FROM table_name;

همچنین برای دادن نام مستعار به یک جدول نیز می‌توان از سینتکس زیر استفاده کرد:

SELECT column_name(s) FROM table_name AS alias_name;

دقت داشته باشید که این نام‌های مستعار فقط نام فیلدها و جداول را در نتیجهٔ کوئری تغییر می‌دهند و هیچ‌گونه تغییری در نام فیلدها و جداول واقعی موجود در دیتابیس ایجاد نمی‌کنند؛ به عبارت دیگر، هرگز اِسکمای دیتابیس را دستخوش تغییر نمی‌سازند. به طور کلی، از جمله کاربردهای Alias می‌توان به موارد زیر اشاره کرد:

- زمانی که از بیش از یک جدول بازیابی اطلاعات صورت گیرد.
- در کوئری از فانکشن‌های پیش‌فرض اس‌کیوال استفاده کرده باشیم.
- نام فیلدها طولانی است و یا از خوانایی کمی برخوردار هستند.
- دو یا چند فیلد با یکدیگر ادغام می‌شوند.

برای درک بهتر این موضوع، یک مثال می‌زنیم. در کوئری زیر اقدام به ایجاد یک نام مستعار برای فیلد name از جدولی به نام students کرده‌ایم:

SELECT id, name AS 'first name' FROM students;

نتیجهٔ کوئری فوق یک جدول حاوی دو فیلد به‌ نام‌های id و first name خواهد بود (باید توجه داشته باشید که اگر نام مستعار شامل اِسپیس باشد، حتماً باید آن را داخل دو علامت " و یا مابین دو علامت ' قرار داد.) همچنین می‌توان همانند مثال زیر، برای ترکیب دو یا چند فیلدِ جدول از یک Alias استفاده کرد:

SELECT name, address + ', ' + phone AS 'contact info' FROM students;

البته ذکر این نکته ضروری است که جهت اجرای درست کوئری فوق در مای‌اس‌کیو‌ال باید از فانکشن از پیش تعریف شدهٔ ()CONCAT در زبان اس‌کیوال به شکل زیر استفاده کرد:

SELECT name, CONCAT(address, ', ', phone) AS 'contact info' FROM students;

که نتیجه کوئری بالا دو فیلد به نام‌های name و contact info به شکل زیر خواهد بود:

+--------+-------------------+
| name   |   contact info    |
+--------+-------------------+
| Amir   | Ilam, 33856972    |
| Negar  | Tehran, 88547265  |
| Sahand | Karaj, 55698265   |
| Sogol  | Semnan, 88695214  |
| Parviz | Mashhad, 87597704 |
+--------+-------------------+

در پایان نیاز به یادآوری است که به طور کلی فانکشن ()CONCAT در مای‌اس‌کیو‌ال جهت الحاق و پیوند چند عبارت با یکدیگر به کار می‌رود.

online-support-icon