آشنایی با SQL

(…)COALESCE یکی از توابع SQL براساس استاندارد ANSI می باشد که در اوراکل پیاده سازی و کامپایل شده و قابل استفاده هستش اما اکثر برنامه نویسای حرفه ای اوراکل به جای آن از تابع (…)NVL استفاده می کند درصورتی که در SQL SERVER به جای استفاده از تابع (…)COALESCE از تابع (…)ISNULL در سرتاسر برنامه استفاده می کند.

دستور SELECT 3.1415 AS pi در SQL SERVER اجرا کنید به شما یک جدولی با یک ستون و یک رکورد خروجی می دهد اما همین دستور را اگر در Oracle اجرا کنید به شما خطا به شماره ORA-00923 می دهد و دلیل خطا این است که در این دستور کلمه کلیدی FROM را نمی تواند پیدا کند برای اجرا و در اوراکل برای اجرا دستور بالا بایستی در انتهای دستور از کلمه کلیدی FROM DUAL استفاده کنید.

در SQL SERVER برای خروجی و نمایش ده رکورد از جدول از دستور SELECT TOP 10 استفاده می کنند. اما در Oracle برای این موضوع برای از دستورات شرطی WHERE ROWNUM <= 10 استفاده می کند. در اوراکل برای خروجی و نمایش 10 رکورد فعلی و حقیقی می تواند از دستور کلیدی ORDER BY استفاده کرد البته از شرط کلیدی هم در SQL Server می توان استفاده کرد. در اوراکل نسخه 12C می توان با استفاده از دستور FETCH FIRST 10 ROWS ONLY ده رکورد اول از جدول را نمایش داد و خروجی گرفت.

در اوراکل با استفاده از شرط CONNECT BY برای اجرا کوئری های سلسه مراتبی استفاده می کنند در حالیکه در SQL Server از table expressions مشترک بازگشتی استفاده می کنند که البته در اوراکل نسخه 11g R2 به بعد می توان از table expressions مشترک بازگشتی استفاده کرد.

ما سه مدل عملگر مقایسه ای مخالف داریم : عملگر =! که در اکر دیتابیس ها به جز در SQL Server از آن استفاده می کنند و در اوراکل از عملگر <> استفاده می کنند و در دیتابیس های IBM DB2 از عملگر =^ استفاده می کنند.

مطالب زیر را حتما بخوانید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *