در این فصل توابع گروهی و روش های استفاده از آنها معرفی می شوند. این توابع به ازای هر مجموعه از سطرهای جدول یک نتیجه خاص برمی گردانند. همچنین عبارت های Group By ، Having ، Order by و روش استفاده از آنها به همراه مثال توضیح داده می شوند.
توابع در SQL- توابع تبدیل نوع داده و توابع عمومی
توابعی که در این متن توضیح داده می شوند، داده های دریافتی از نوع کاراکتری، عددی یا تاریخ را به نوع دیگر تبدیل می کنند. در ادامه توابعی که مربوط به مقادیر NULL می باشند معرفی می گردند. همچنین روش استفاده از عبارات شرطی با منطق IF THEN-ELSE توضیح داده می شود.
نکاتی در مورد مجوز پکیج در اوراکل
زمانی که user1 مجوز اجرای پروسیجرش را به user2 اهدا می کند، user2 علاوه بر امکان اجرای این پروسیجر، می تواند محتویات پروسیجر را هم مشاهده کند:
SQL> show user
User is “user1”
SQL> create user user2 identified by u;
User created
SQL> grant create session to user2;
Grant succeeded
SQL> grant execute on user1.myproc1 to user2;
Grant succeeded
SQL> conn user2/u
Connected.
SQL> exec user1.myproc1;
PL/SQL procedure successfully completed.
آموزش sql مقدماتی – توابع در SQL(قسمت اول)
در دستورات SQL هر تابع مجموعه ای از عملیات انجام می دهد و می تواند تغییراتی را بر داده های دیتابیس اعمال کند. در دیتابیس اوراکل می توان یک تابع جدید تعریف نمود یا از توابع از پیش تعریف شده استفاده کرد. توابع از پیش تعریف شده برای اطلاعات با نوع داده های مختلف(کاراکتر، عددی، تاریخی و …) استفاده می شوند. در این فصل ساختار کلی توابع در SQL را عنوان می کنیم و تعدادی از توابع از پیش تعریف شده در دیتابیس اوراکل و روش استفاده از آنها را با ذکر مثال توضیح می دهیم.
توابع SQL می توانند یک یا چند آرگومان ورودی داشته باشند ولی تنها یک مقدار را به عنوان خروجی (output) برمی گردانند.

+ مقادیر ورودی یا همان آرگومنت ها می توانند عبارت، ستون، متغیر و یا یک مقدار ثابت باشند.
آموزش SQL مقدماتی – محدودسازی با کمک عبارت WHERE
زمانی که می خواهیم فقط تعداد مشخصی از سطرهای یک جدول را انتخاب کنیم باید در دستور SQL از عبارت WHERE استفاده کنیم. عبارت WHERE به منظور محدودسازی در زمان نمایش یا ویرایش اطلاعات استفاده می شود بنابراین فقط بخش هایی از اطلاعات که نیاز داریم را انتخاب می کنیم. محل قرارگیری عبارت WHERE در دستور SELECT بعد از عبارت FROM است. این عبارت به ترتیب از سه قسمت زیر تشکیل می شود:
1.نام ستون
2.شرط مقایسه ای
3.نام یک ستون یا مقداری ثابت یا لیستی از مقادیر
مثال: اطلاعات کارمندانی را که در دپارتمان شماره 90 مشغول به کار هستند را نمایش دهید.

آموزش SQL مقدماتی – دستور SELECT
دستور SELECT یکی از پرکاربردترین دستورات SQL می باشد که با استفاده از آن اطلاعات دیتابیس اوراکل که در حافظه یا دیسک قرار دارند نمایش داده می شوند. در این متن انواع روش های استفاده از دستور SELECT برای بازیابی و نمایش اطلاعات از دیتابیس اوراکل را توضیح می دهیم.
همانطور که می دانیم در دیتابیس اوراکل یک جدول از ستون و سطر تشکیل شده است. در دستور SELECT ابتدا نام ستون یا ستون هایی از یک جدول که می خواهیم اطلاعات آن را نمایش دهیم را انتخاب می کنیم و سپس بعد از عبارت FROM نام آن جدول را می نویسیم. در خروجی این دستور اطلاعات ستون های انتخاب شده برای سطرهای جدول نمایش می یابند.
مثال: در دستور SELECT زیر ستون های DEPARTMENT_ID و LOCATION_ID از جدول DEPARTMENTS انتخاب شده اند و در خروجی این دستور، اطلاعات مورد نظر نمایش می یابند.

+ به هر ترتیبی که نام ستون ها را در دستور SELECT انتخاب کنیم، نمایش اطلاعات نیز به همان ترتیب خواهد بود. در مثال قبلی ابتدا اطلاعات ستون DEPARTMENT_ID و سپس اطلاعات ستون LOCATION_ID نمایش داده می شود.
کنترل دیتای null در زمان استفاده از order by(با کمک عباراتNULLS LAST و NULLS FIRST)
قصد داریم لیستی از جداول موجود در بانک را بر اساس تعداد رکوردی که دارند، به صورت نزولی نمایش دهیم به این جهت، با فرض بروز بودن statisticها، به سراغ ویوی dba_tables خواهیم رفت وبا کمک عبارت order by desc، خروجی را بر اساس ستون num_rows مرتب می کنیم.
select owner,table_name,num_rows from dba_tables order by num_rows desc;

پارامتر ها و توابع تخمینی
سوال: عددی که دستور زیر در خروجی بر می گرداند، چند در صد احتمال خطا خواهد داشت؟
SQL> set timing on
SQL> SELECT COUNT(DISTINCT name) name FROM tbl;
6000
Elapsed: 00:00:07.32