عبارت‌های حسابی و نام مستعار ستون‌ها در SQL | آموزش SQL Server

عبارت‌های حسابی و نام مستعار ستون‌ها در SQL

توسط admin | گروه SQL Server | 1405/05/22

نظرات 0

عبارت‌های حسابی و نام مستعار ستون‌ها در SQL

عنوان اصلی: Expressions
عنوان ترجمه: عبارت‌های حسابی و نام مستعار ستون‌ها در SQL
صاحب/سازمان اثر: Relational Systems Corporation
زبان اصلی: انگلیسی
حق نشر منبع: Copyright © 2001
تاریخ ترجمه: 2026-08-13 / 1405/05/22
اعتبار ترجمه: ترجمه با کمک هوش مصنوعی
بازه صفحات PDF: 38 تا 45

4 - عبارت‌ها

  • عبارت‌های حسابی
  • عبارت‌ها در Clauseهای دیگر
  • نام‌های مستعار ستون
اسکن صفحه 38 فایل PDFتصویر کامل صفحه 38 منبع برای حفظ جدول‌ها، نمودارها، نمونه‌ها و چیدمان اصلی.
صفحه PDF 38 - تصویر منبع اصلی برای کنترل بصری و حفظ عناصر اسکن‌شده

عبارت‌های حسابی

عبارت حسابی (Arithmetic Expression) عبارتی است که از عملوندها - یعنی مقادیر عددی و/یا نام ستون‌ها - و عملگرهای حسابی تشکیل می‌شود. SQL عبارت حسابی را ارزیابی و آن را با مقدار عددی مناسب جایگزین می‌کند.

عملگرهای حسابی
عملگرمعنیمثال
+جمع2 + 2
-تفریقBDATE - 365
*ضربPOP * 1.25
/تقسیمPERCENT / 100
( )تقدم2 + (4 / 2)

عملوندها می‌توانند مقدار عددی یا نام ستون باشند

عملوندهای معتبر شامل اعداد، نام ستون‌ها و عبارت‌های دیگر هستند. وقتی ستون در یک عبارت استفاده می‌شود، مقادیر آن ستون باید عددی یا تاریخ معتبر باشند. برای تاریخ‌ها فقط جمع و تفریق معتبر است.

عملگرها بین عملوندها قرار می‌گیرند

عملگر حسابی طبق روش معمول بین عملوندهای خود نوشته می‌شود. فاصله در دو طرف عملگر اجباری نیست، هرچند در مثال‌ها برای خوانایی استفاده شده است.

عبارت‌های داخل پرانتز زودتر ارزیابی می‌شوند

SQL ابتدا عبارت‌های حسابی داخل پرانتز را محاسبه می‌کند و سپس نتیجه را با عبارت‌های دیگر همان دستور ترکیب می‌کند. جای پرانتزها می‌تواند مقدار نهایی عبارت را به‌طور چشمگیری تغییر دهد.

اسکن صفحه 39 فایل PDFتصویر کامل صفحه 39 منبع برای حفظ جدول‌ها، نمودارها، نمونه‌ها و چیدمان اصلی.
صفحه PDF 39 - تصویر منبع اصلی برای کنترل بصری و حفظ عناصر اسکن‌شده

عبارت‌های حسابی - ادامه

علاوه بر ستاره و نام ستون‌ها، می‌توان عبارت‌ها را نیز در فهرست ستون‌های Clause SELECT نوشت. SQL در موقعیت تعیین‌شده یک ستون محاسبه‌شده به جدول نتیجه اضافه می‌کند. نام پیش‌فرض ستون جدید خود عبارت است.

SELECT COUNTRY, POP / AREA
FROM COUNTRIES
WHERE LANGUAGE = 'GERMAN';

SELECT COUNTRY, GNP * 1.4
FROM COUNTRIES
WHERE LANGUAGE = 'GERMAN';
  • عبارت‌ها در Clause SELECT مشخص می‌شوند.
  • عبارت‌ها ستون‌های جدیدی در نتیجه تولید می‌کنند.
  • عبارت برای هر سطر جداگانه محاسبه می‌شود.
اسکن صفحه 40 فایل PDFتصویر کامل صفحه 40 منبع برای حفظ جدول‌ها، نمودارها، نمونه‌ها و چیدمان اصلی.
صفحه PDF 40 - تصویر منبع اصلی برای کنترل بصری و حفظ عناصر اسکن‌شده

عبارت‌های حسابی - ادامه

در نحو فعلی SELECT، امکان درج عبارت در Clause SELECT افزوده شده است. عملگرهای حسابی نیز در صفحه منبع خلاصه شده‌اند.

SELECT [ DISTINCT ] collist, expression
FROM table
ORDER BY col [ DESC ] list

-- Example expression
POP / AREA

تمرین‌ها

  1. اگر 20 درصد کانادایی‌ها به آمریکا مهاجرت کنند، چند آمریکایی جدید به جمعیت آمریکا افزوده می‌شود؟
  2. در آمریکا برای هر سرباز چه مقدار پول خرج می‌شود؟ در چین چطور؟
  3. تعداد کل وسایل نقلیه/تجهیزات نظامی آمریکا را محاسبه کنید: تانک‌ها به‌علاوه کشتی‌ها به‌علاوه هواپیماها.

امتیاز اضافه

  1. فرض کنید 45 درصد بودجه نظامی برای چکش‌های 125 دلاری خرج می‌شود. چند چکش در اختیار داریم؟
اسکن صفحه 41 فایل PDFتصویر کامل صفحه 41 منبع برای حفظ جدول‌ها، نمودارها، نمونه‌ها و چیدمان اصلی.
صفحه PDF 41 - تصویر منبع اصلی برای کنترل بصری و حفظ عناصر اسکن‌شده

عبارت‌ها در Clauseهای دیگر

از آنجا که SQL عبارت‌های موجود در SELECT را مانند «ستون‌های مجازی» پرشده با مقادیر محاسبه‌شده در نظر می‌گیرد، می‌توان از عبارت‌ها به‌جای نام ستون در Clauseهای WHERE و ORDER BY نیز استفاده کرد.

SELECT COUNTRY, POP / AREA
FROM COUNTRIES
WHERE POP / AREA > 2000;

SELECT COUNTRY, POP / AREA
FROM COUNTRIES
WHERE POP / AREA > 2000
ORDER BY POP / AREA DESC;
  • عبارت‌ها می‌توانند در Clause WHERE استفاده شوند.
  • عبارت‌ها می‌توانند در Clause ORDER BY استفاده شوند.
اسکن صفحه 42 فایل PDFتصویر کامل صفحه 42 منبع برای حفظ جدول‌ها، نمودارها، نمونه‌ها و چیدمان اصلی.
صفحه PDF 42 - تصویر منبع اصلی برای کنترل بصری و حفظ عناصر اسکن‌شده

عبارت‌ها در Clauseهای دیگر - ادامه

در نحو فعلی، عبارت‌ها در Clauseهای WHERE و ORDER BY نیز مجاز شده‌اند.

SELECT [ DISTINCT ] collist, expression
FROM table
WHERE comparison
   OR expression comparison
ORDER BY col [ DESC ] list
   OR expression [ DESC ] list

-- Example
WHERE POP / AREA > 300
ORDER BY POP / AREA DESC

تمرین‌ها

  1. کشور، جمعیت، مساحت و تراکم جمعیت (POP/AREA) را برای کشورهایی نمایش دهید که تراکمشان کمتر از 7 نفر در هر مایل مربع است. بیشترین تراکم را در بالا قرار دهید. نتیجه 7 سطر دارد.
  2. کشور، جمعیت، نرخ سواد و تعداد افراد باسواد را برای همه کشورهایی نشان دهید که بیش از 100 میلیون فرد باسواد دارند. برای محاسبه تعداد افراد باسواد، نرخ سواد را بر 100 تقسیم و نتیجه را در جمعیت ضرب کنید. 7 سطر وجود دارد.

امتیاز اضافه

  1. فرض کنید همه ارتش‌ها 30 درصد بودجه خود را برای زیرسیگاری خرج می‌کنند و میانگین قیمت هر زیرسیگاری نظامی 650 دلار است. کشور و تعداد زیرسیگاری به‌ازای هر سرباز را نمایش دهید، اما فقط اگر این عدد بیش از 10 باشد. بیشترین مقدار را در بالا قرار دهید. 9 کشور چنین وضعی دارند.
اسکن صفحه 43 فایل PDFتصویر کامل صفحه 43 منبع برای حفظ جدول‌ها، نمودارها، نمونه‌ها و چیدمان اصلی.
صفحه PDF 43 - تصویر منبع اصلی برای کنترل بصری و حفظ عناصر اسکن‌شده

نام مستعار ستون‌ها

کلیدواژه AS در Clause SELECT برای تعریف نام مستعار ستون (Column Alias)، یعنی نامی که کاربر به ستون اختصاص می‌دهد، استفاده می‌شود. برای هر ستونی می‌توان Alias تعریف کرد، اما کاربرد رایج آن نام‌گذاری معنادار ستون‌های محاسبه‌شده است.

SELECT COUNTRY, POP / AREA
FROM COUNTRIES
WHERE POP / AREA > 2000
ORDER BY POP / AREA DESC;

SELECT COUNTRY,
       POP / AREA AS DENSITY
FROM COUNTRIES
WHERE DENSITY > 2000
ORDER BY DENSITY DESC;
  • Alias ستون در Clause SELECT تعریف می‌شود.
  • Alias را می‌توان در Clause WHERE استفاده کرد.
  • Alias را می‌توان در Clause ORDER BY استفاده کرد.
  • در برخی گویش‌های SQL، نوشتن AS اختیاری است.
اسکن صفحه 44 فایل PDFتصویر کامل صفحه 44 منبع برای حفظ جدول‌ها، نمودارها، نمونه‌ها و چیدمان اصلی.
صفحه PDF 44 - تصویر منبع اصلی برای کنترل بصری و حفظ عناصر اسکن‌شده

نام مستعار ستون‌ها - ادامه

در نحو فعلی، کلیدواژه AS و Aliasهای ستون به Clause SELECT افزوده شده‌اند.

SELECT [ DISTINCT ] col [ AS alias ] list,
       expr [ AS alias ] list
FROM table
WHERE comparison
ORDER BY col [ DESC ] list,
         expr [ DESC ] list

-- Examples
LANGUAGE AS LANG
POP / AREA AS DENSITY

تمرین‌ها

  1. کشور، جمعیت، نرخ سواد و تعداد افراد باسواد را برای همه کشورهایی نشان دهید که بیش از 100 میلیون فرد باسواد دارند. نام ستون محاسبه‌شده را READERS قرار دهید و هرجا مناسب است از این Alias استفاده کنید. نتیجه 7 سطر دارد.
  2. با استفاده از Alias ستون، کشور، جمعیت، GNP و GPP را نمایش دهید. GPP مخفف Gross Personal Product و برابر GNP * 1000000 / POP است. فقط کشورهایی را نشان دهید که GPP آن‌ها بیش از 20,000 است و نتیجه را بر اساس GPP نزولی مرتب کنید. 9 سطر وجود دارد.

امتیاز اضافه

  1. پیشنهاد شده کشورهای جهان 20 درصد نیروهای نظامی خود را کاهش دهند و صرفه‌جویی حاصل را به نیروگاه‌های هسته‌ای اختصاص دهند. هزینه متوسط هر سرباز 20,000 دلار است. سهم هر کشور چقدر خواهد بود؟ نام ستون محاسبه‌شده را FISSION_FUND بگذارید، بیشترین مقدار را در بالا قرار دهید و کشورهایی را که کمتر از دو میلیارد سهم دارند حذف کنید.
اسکن صفحه 45 فایل PDFتصویر کامل صفحه 45 منبع برای حفظ جدول‌ها، نمودارها، نمونه‌ها و چیدمان اصلی.
صفحه PDF 45 - تصویر منبع اصلی برای کنترل بصری و حفظ عناصر اسکن‌شده

امتیاز کاربران به این مقاله

☆☆☆☆☆

0 نفر امتیاز داده اند. میانگین: 0.0 از 5

 

0 نظر

نظر محترم شما در مورد مقاله های وب سایت برنامه نویسی و پایگاه داده

نظرات محترم شما در خدمات رسانی بهتر ما را یاری می نمایند. لطفا اگر مایل بودید یک نظر ما را مهمان فرمائید. آدرس ایمیل و وب سایت شما نمایش داده نخواهد شد.

0 / 500

اطلاعات تماس

  • آدرس:اصفهان-خیابان ام کلثوم غربی - بعد خیابان تخم چی - بیست متر بعد از پیتزا ننه شب - کوچه تعمیر گاه سمار زغالی - پلاک 354 - درب مشکی - طبقه هفتم
  • آدرس ایمیل:najafzade@gmail.com
  • وب سایت:http://www.a00b.com/
  • تلفن ثابت:(+98)9131253620
  • تلفن همراه:09131253620