Sas- proc sql တွင် update ကိုအသုံးပြုနည်း
ဒေတာအတွဲရှိ ကော်လံတစ်ခု သို့မဟုတ် တစ်ခုထက်ပိုသော ကော်လံများတွင် တန်ဖိုးများကို အပ်ဒိတ်လုပ်ရန် PROC SQL တွင် UPDATE ကြေညာချက်ကို သင်အသုံးပြုနိုင်သည်။
ဤသည်မှာ UPDATE ထုတ်ပြန်ချက်ကို လက်တွေ့တွင် အသုံးပြုရန် အသုံးအများဆုံးနည်းလမ်းများဖြစ်သည်။
နည်းလမ်း 1- အခြေအနေတစ်ခုအပေါ် အခြေခံ၍ ကော်လံရှိ တန်ဖိုးများကို အပ်ဒိတ်လုပ်ပါ။
proc sql ;
update my_data
set var1='new_value'
where var1='old_value';
quit ;
နည်းလမ်း 2- အခြေအနေများစွာကို အခြေခံ၍ ကော်လံရှိ တန်ဖိုးများကို အပ်ဒိတ်လုပ်ပါ။
proc sql ;
update my_data
set var1 =
case when var1> 25 then 100
when var1> 20 then 50
else 0
end;
quit ;
အောက်ပါနမူနာများသည် SAS ရှိ အောက်ပါဒေတာအစုံဖြင့် နည်းလမ်းတစ်ခုစီကို လက်တွေ့တွင် မည်သို့အသုံးပြုရမည်ကို ပြသသည်-
/*create dataset*/
data my_data;
input team $position $points;
datalines ;
A Guard 22
A Guard 20
A Guard 30
A Forward 14
A Forward 11
B Guard 12
B Guard 22
B Forward 30
B Forward 9
B Forward 12
B Forward 25
;
run ;
/*view dataset*/
proc print data =my_data;
ဥပမာ 1- အခြေအနေတစ်ခုအပေါ် အခြေခံ၍ ကော်လံရှိ တန်ဖိုးများကို အပ်ဒိတ်လုပ်ပါ။
အသင်းကော်လံတန်ဖိုးများကို “ Atlanta” အဖြစ် “ Atlanta” အဖြစ် အပ် ဒိတ်လုပ်ရန် အောက်ပါ UPDATE ကြေညာချက်ကို ကျွန်ုပ်တို့ အသုံးပြုနိုင်ပါသည်-
/*update values in team column where team is equal to 'A'*/
proc sql ;
update my_data
set team='Atlanta'
where team='A';
quit ;
/*view updated dataset*/
proc print data =my_data;
ယခင်က “ A” နှင့် ညီမျှသော အဖွဲ့ကော်လံရှိ တန်ဖိုးတစ်ခုစီသည် ယခုအခါ “ Atlanta” နှင့် ညီမျှကြောင်း သတိပြုပါ။
အဖွဲ့ကော်လံရှိ “ A” နှင့် မညီမျှသော မည်သည့်တန်ဖိုးများကိုမဆို မပြောင်းလဲဘဲထားခဲ့သည်။
ဥပမာ 2- အခြေအနေများစွာအပေါ်အခြေခံ၍ ကော်လံရှိတန်ဖိုးများကို အပ်ဒိတ်လုပ်ပါ။
PROC SQL တွင် အောက်ပါ UPDATE ကြေညာချက်ကို အသုံးပြု၍ အခြေအနေများစွာကို အခြေခံ၍ အမှတ်များကော်လံရှိ တန်ဖိုးတစ်ခုစီကို အပ်ဒိတ်လုပ်နိုင်ပါသည်။
/*update values in points column based on multiple conditions*/
proc sql ;
update my_data
set points =
case when points> 25 then 100
when points> 20 then 50
else 0
end;
quit ;
/*view updated dataset*/
proc print data =my_data;
အမှတ်များ ကော်လံရှိ တန်ဖိုးများကို အပ်ဒိတ်လုပ်ရန် CASE WHEN ကြေညာချက်ဖြင့် UPDATE ကြေညာချက်ကို ကျွန်ုပ်တို့ အသုံးပြုခဲ့သည်။
အထူးသဖြင့်-
- အမှတ်များကော်လံရှိ ရှိပြီးသားတန်ဖိုးသည် 25 ထက် ပိုများပါက၊ ၎င်းကို 100 သို့ အပ်ဒိတ်လုပ်ပါ။
- မဟုတ်ပါက၊ အမှတ်များကော်လံရှိရှိပြီးသားတန်ဖိုးသည် 20 ထက်များနေပါက၊ ၎င်းကို 50 သို့ အပ်ဒိတ်လုပ်ပါမည်။
- မဟုတ်ပါက၊ အမှတ်များ ကော်လံရှိ တန်ဖိုးကို 0 အဖြစ် အပ်ဒိတ်လုပ်ပါသည်။
ကျွန်ုပ်တို့သည် CASE WHEN ထုတ်ပြန်ချက်တွင် အခြေအနေ သုံးခုကိုသာ အသုံးပြုခဲ့သည်ကို သတိပြုပါ၊ သို့သော် သင်သည် အခြေအနေများစွာကို သင်အလိုရှိသလောက် အသုံးပြုနိုင်သည်။
ထပ်လောင်းအရင်းအမြစ်များ
အောက်ဖော်ပြပါ သင်ခန်းစာများသည် SAS တွင် အခြားဘုံအလုပ်များကို မည်သို့လုပ်ဆောင်ရမည်ကို ရှင်းပြသည်-
SAS- PROC SQL တွင် LIKE အော်ပရေတာအား အသုံးပြုနည်း
SAS- PROC SQL တွင် IN အော်ပရေတာအား အသုံးပြုနည်း
SAS- PROC SQL တွင် WHERE အော်ပရေတာအား မည်သို့အသုံးပြုရမည်နည်း။