Sunday, April 29, 2012

Oracle SQL සිංහලෙන් - Chapter 2 - Part 01

කලින් අදියරේදී අපි දත්ත ලබා ගන්න හැටි ගැන කතා කලානේ. මේ අදියරේදී මම බලාපොරොත්තු වෙන්නේ දත්ත සිමා කිරීම් සහ දත්ත සැකසීම් ගැන කියලා දෙන්නයි.

සාමාන්‍යයෙන්  අපි දත්ත ලබාගද්දී ඒ අදාල Column  එකේ තියෙන Data ටික ඔක්කොම එනවනේ. නමුත් දැන් අපි බලන්නේ තව දුරත් එහාට ගිහිල්ල අපිට එකෙනුත් අවශ්‍ය කරන ටික පමණක් ලබා ගන්නේ කොහොමද කියල බලන්නයි.

මෙහිදී අපි භාවිතා කරන්නේ WHERE කියන Clause එක එහෙම නැත්තම් විධානයයි.
දැන් බලමු කොහොමද WHERE වලින් SQL Statements ලියන්නේ කියලා.

SELECT [ අවශ්‍ය Columns ]
FROM [ඒවා අඩංගු Table එක ]
WHERE [ සීමාකිරීම් ]

දැන් මේක තව ටිකක් පැහැදිලි වෙන්න උදාහරණ ටිකක් බලමු.

SELECT employee_id, last_name, job_id, department_id
FROM employees;

ඉහත Statement සලකමු. මෙතැනදී  Column වල තියෙන හැම දත්තයක්ම අපිට ලැබෙනවා. නමුත් අපි හිතමු අපිට එක Department එකක ඉන්න සේවකන්ගේ විස්තර විතරක් ගන්න ඕන කියලා. එතකොට අපිට පහත විදියට Statement එක ලියන්න පුළුවන්.

SELECT first_name,
  last_name,
  department_id
FROM employees
WHERE department_id = 60;

මේකෙදි අපිට Result එක විදියට ලැබෙන්නේ Department ID එක 60 වෙන අයව විතරයි.



මේකෙදි අපිට ඉලක්කම් විතරක් නෙමෙයි. අක්ෂර වගේම දිනයන් අනුව පවා සිමා කිරීම් කරලා අවශ්‍ය දත්ත ලබා ගන්න පුළුවන්. ඒත් අක්ෂර අනුව දත්ත ලබාගනිද්දී අක්ෂර තියෙන විදියට දෙන්න වෙනවා මොකද මේක Case-Sensitive ඒ වගේම දිනයන් ගද්දීත් දිනයන් තියෙන විදියටම දෙන්න ඕන මොකද ඒවා Format-Sensitive නිසා. ඒ වගේම උඩු කොමා (' ') ඇතුලේ තමයි දෙන්න ඕන. දැන් ඒවා සම්බන්ධ වෙන උදාහරණ ටිකක් බලමු.

අවශ්‍ය නමක් අනුව දත්ත ලබා ගැනීම.

SELECT first_name,
  last_name,
  department_id
FROM employees
WHERE first_name = 'John';



අවශ්‍ය දිනයක් අනුව දත්ත ලබාගැනීම

SELECT first_name,
  last_name,
  hire_date
FROM employees
WHERE hire_date = '07-JUN-02';



දැන් මෙහිදී අපි යොදා ගන්න Operators ගැන බලමු.

සංකේතය
අර්ථය
=
සමාන
> 
විශාලයි
>=
විශාලයි හෝ සමානයි
< 
කුඩායි
<=
කුඩායි හෝ සමානයි
< > හෝ != හෝ ^=
සමාන නැහැ
BETWEEN ..... AND.....
අගයන් දෙකක් අතර
IN (Set)
නම් කල අගයන් කිහිපයකට සමාන
LIKE
යම් රටාවකට ඇති
IS NULL
කිසිවක් නොමැති

ඊළඟ පොස්ට් එකෙන් මේ විවිධ Operators භාවිතා කරන හැටි බලමු.
Facebook Comments Plugin Bloggerized by උත්පලගේ අඩවිය

2 comments:

  1. ඒකෙත් හැටි නේද බන්!!! මොනා උනත් අසාවටවත් අත ගාන්න එපැයි කවදා හරි. ජය වේවා දිගටම ලියපන්!!

    ReplyDelete
    Replies
    1. ඔව් ඔව් කවදාහරි ඕන වෙයි. SQL ඉගෙන ගන්නත් පුළුවන්. Oracle වලටම සිමා වෙන්නේ නැහැ මේවා. MySQL වලටත් ඕන වෙයි. තැනක්ව් වේවා....!!!

      Delete