تفاوت Join و InnerJoin در performance آنها می باشد. نتیجه ی اجرای هر دوی آنها یکسان است اما دستور InnerJoin دارای Prformance بالاتری می باشد و به همین دلیل توصیه می شود که از دستور InnerJoin استفاده شود.
وقتی می خواهیم تعداد نا مشخصی از آبجکت های هم نوع را در یک آرایه بریزیم، یک راهش این است که یک لیست ایجاد کنیم و آبجکت های مورد نظر را به آن Add کنیم و در پایان با استفاده از متد ToArray آن لیست را به آرایه تیدیل کنیم:
به عنوان مثال O1 , O2 و O3 سه آبجکت از نوع کلاس MyClass هستند. متغیر x آرایه ای از نوع MyClass خواهد بود:
List<MyClass> myList = new List<MuClass>();
myList.Add(O1);
myList.Add(O2);
myList.Add(O3);
var x = myList.ToArray();
اجرای دو اسکرییت زیر نشان می دهد که (1,null) با (1,null) برابر نیست اما (1و0) با (1و0) برابر است.
select 1 from dual where (1,0) in ( select 1, 0 from dual)
select 1 from dual where (1,null) in ( select 1, null from dual)
دستورهای DML در Sql شامل دستورات insert، delete و update می باشد. این دستورها در بلاک های pl/sql نیز مستقیماً پشتیبانی می شوند.
یکی از block های pl/sql نامش cursor می باشد.
cursor مدل توسعه یافته ی دستور Select into می باشد که می تواند یک یا بیش از یک رکورد را به داخل block ما بفرستد.
همچنین کرسر از نظر ساختاری فضایی از حافظه بوده که همانند یک متغیر محلی در ناحیه Decleration تعریف می شود. کرسر مقادیرش را از دیتابیس fetch کرده و در اختیار بلاک pl/sql قرار می دهد.