ကွန်ပျူတာများဖိုင်အမျိုးအစားများ

SQL ကွဲပြား: ဖော်ပြချက်, ဥပမာ, ဂုဏ်သတ္တိများ

သင်စားပွဲကနေဒေတာတွေကို retrieve မှ SQL အသုံးပြုတဲ့အခါမကြာခဏ user ကမလိုအပ်တဲ့ဒေတာတစ်ခုလုံးဝတူညီထပ်တန်း၏တည်ရှိမှုသည်အလက်ခံ၏။ ဤအခြေအနေမှရှောင်ရှားရန်, Select လုပ်ပါဝါကျထဲမှာ SQL ကွဲပြားငြင်းခုံကိုအသုံးပြုပါ။ ဤဆောင်းပါးသည်ဤဆင်ခြေများအသုံးပြုခြင်း၏နမူနာအဖြစ်လျှောက်လွှာဟာငြင်းခုံခြင်းဖြင့်စွန့်ပစ်ရပါမည်သည့်အခြေအနေများဆွေးနွေးကြမည်။

ကျနော်တို့ကသီးခြားဥပမာစဉ်းစားရန်ဆက်လက်ဆောင်ရွက်မပြုမီ, စားပွဲ၏စုံတွဲတစ်တွဲလိုအပ်သောဒေတာဘေ့စဖန်တီးပါ။

ပြင်ဆင်မှုစားပွဲပေါ်မှာ

ကျနော်တို့ကျောက်ပြားနှစ်ပြားအတွက်တင်ပြနောက်ခံပုံအကြောင်းဒေတာဘေ့စစတိုးဆိုင်များသတင်းအချက်အလက်ရှိသည်ဆိုပါစို့။ ဤသည်စားပွဲပေါ်မှာ oboi အမျိုးအစား (နောက်ခံပုံအမျိုးအစား။ - စက္ကူ, ဗီနိုင်း, etc) ၏အိုင်ဒီလယ်ကွင်း (မူထူးခြားတဲ့အမှတ်အသား) နဲ့ (ဝေါလ်ပေပါ), အရောင် (အရောင်), တစ်ဦး struct (ဖွဲ့စည်းပုံ) နှင့်စျေးနှုန်း (ဈေးနှုန်း) ။ ထိုအ id_oboi လယ်ကွင်း (စားပွဲ Oboi အတွက်ထူးခြားတဲ့အမှတ်အသားတစ်ခုရည်ညွှန်း) နှင့်ရေတွက် (စတော့ရှယ်ယာထဲမှာလိပ်၏နံပါတ်) နှင့်အတူစားပွဲ Ostatki (အကြွင်းအကျန်) ။

ဒေတာစားပွဲပေါ်မှာဖြည့်ပါ။ စားပွဲအတွက်ဝေါလ်ပေ 9 မှတ်တမ်းများ add:

Oboi

အိုင်ဒီ

ပုံစံ

အရောင်

struct

စြေး

1

စက္ကူ

multicolor

ဖောင်းကြွ

56,9

2

စက္ကူကို double-အလွှာ

အဝါနုရောင်ရှိသော

ခြောသော

114,8

3

ဗီနိုင်း

လိမ်မော်သီး

ဖောင်းကြွ

504

4

မွေး

အဝါနုရောင်ရှိသော

ဖောင်းကြွ

1020,9

5

စက္ကူကို double-အလွှာ

အဝါနုရောင်ရှိသော

ခြောသော

150,6

6

စက္ကူ

multicolor

ခြောသော

95,4

7

ဗီနိုင်း

ညိုသော

ခြောသော

372

8

မွေး

အဖြူ

ဖောင်းကြွ

980,1

9

အထည်

ပန်းရောင်

ခြောသော

1166,5

အဆိုပါအကြွင်းအကျန်နှင့်အတူစားပွဲ - ကိုးမှတ်တမ်းများ:

Ostatki

id_oboi

ရေတွက်

1

8

2

12

3

24

4

9

5

16

6

7

7

24

8

32

9

11

ကျနော်တို့ SQL အတွက်ကွဲပြားအလို့ငှာ၏ဖော်ပြချက်မှဆက်လက်ဆောင်ရွက်။

ယင်းကို Select လုပ်ပါအပိုဒ်အတွက်ကွဲပြားထားပါ

ကွဲပြားငြင်းခုံချက်ချင်းမေးမြန်းချက်အတွက်ကို Select လုပ်ပါသော့ချက်စာလုံးပြီးနောက်ထားရှိရပါမည်။ ဒါကြောင့်နောက်ဆုံးစုံစမ်းမှုရလဒ်လုံးဝတူညီညှို့ဖြစ်ပါသည်မှဖယ်ထုတ်လိုက်ပါမည်ဘာလို့လဲဆိုတော့သူ Select လုပ်ပါဝါကျအတွက်သတ်မှတ်ထားသောအပေါငျးတို့သကော်လံဖို့လျှောက်လွှာတင်ခဲ့တယ်။ ထို့ကြောင့်တစ်ချိန်က SQL တောင်းဆိုမှုကို«ကွဲပြား select လုပ်ပါ»ရေးသားခြင်းသည့်အခါသတ်မှတ်ဖို့လုံလောက်ပါတယ်။ အဆိုပါခြွင်းချက်အနည်းငယ်အကြာတွင်ကိုကြည့်ကြောင်းစုစုပေါင်းလုပ်ဆောင်ချက်များကိုအတွင်း၌ကွဲပြား၏အသုံးပြုမှုသည်။

ဒါဟာဒေတာဘေ့စအများစုနှင့်တောင်းဆိုချက်အရသင့်ရဲ့ type ကိုအသိအမှတျမထားဘူးအောက်မေ့ရပါမည်:

ကွဲပြား Ostatki.Count, ကွဲပြား Oboi SELECT ။ *

oboi FROM မှ

Inner Ostatki ON Oboi.id = Ostatki.id_oboi JOIN

အဲဒီမှာအငြင်းအခုံအကြိမ်ပေါင်းများစွာစဉ်းစားသို့မဟုတ်သတ်မှတ်ထားသောပေမယ့်ဒုတိယမတိုင်မီတတိယသို့မဟုတ်အခြားမရွေးကော်လံတစ်ချိန်ကမခံခဲ့ရပါဘူး။ သင်တစ်ဦးအမှား syntax အတွက်မှားယွင်းမှုတစ်ခုကိုရည်ညွှန်းရပါလိမ့်မယ်။

စံအတွက်လျှောက်လွှာကွဲပြားမေးမြန်းချက်

ဒါဟာသင့်လျော်သောအဆောက်အဦးတည်ဆောက်ပုံစားပွဲနှင့်တစ်ခုတည်းစားပွဲပေါ်မှာအတွင်းသူတို့ကိုဖြည့်လုံးဝတူညီညှို့ရှိပါတယ်အခါအခွအေနေဖယ်ထုတ်ထားကြောင်းသိသာသည်။ ထိုကွောငျ့, တဦးတည်း table ၏နမူနာအတူစုံစမ်းမှုကွပ်မျက်«ကွဲပြားကို Select လုပ်ပါ * »လက်တွေ့ဖြစ်ပါတယ်။

ကျနော်တို့အမျိုးအစားအားဖြင့် sort မှပဲအဆင်ပြေဘို့ကျနော်တို့ဝေါလ်ပေပါတယျ type ကိုသိရန်လိုအပ်သည့်အခါအခြေအနေကိုစဉ်းစားကြည့်ပါ:

Oboi.type SELECT

အမျိုးအစားအားဖြင့် Oboi အလို့ငှာ FROM မှ

ထိုအခါရလဒ်များသည် get:

ပုံစံ

စက္ကူ

စက္ကူ

စက္ကူကို double-အလွှာ

စက္ကူကို double-အလွှာ

ဗီနိုင်း

ဗီနိုင်း

အထည်

မွေး

မွေး

စားပွဲတွင်တွေ့မြင်အဖြစ်ထပ်တန်းရှိပါတယ်။ ကျွန်တော်အဆိုပြုချက်ကို add ပါလျှင်ကွဲပြားရွေးချယ်ပါ:

ကွဲပြား Oboi.type SELECT

အမျိုးအစားအားဖြင့် Oboi အလို့ငှာ FROM မှ

ကျွန်တော်အထပ်ထပ်မရှိဘဲရလဒ်ရ:

ပုံစံ

စက္ကူ

စက္ကူကို double-အလွှာ

ဗီနိုင်း

အထည်

မွေး

စနစ်တကျစားပွဲတစ်ခုအတွက် data တွေကိုရိုက်ထည့်လျှင်ထို့ကြောင့်, ထို့နောက်ချက်ချင်းဝယ်လက်တစ်ဦးကိုဖုန်းဖြင့်ခေါ်ဆိုမှုသို့မဟုတ်တောင်းဆိုချက်ကိုအပြီးကျနော်တို့သောအရည်ဝေါလ်ပေပါကိုဖွဆေိုနိုငျသညျ, စတိုးဆိုင်များတွင်ရရှိနိုင်ဖိုက်ဘာမှန်နဲ့ acrylic နောက်ခံပုံများမရှိကြပေ။ စျေးဆိုင်များ၏အကွာအဝေးများသောအားဖြင့်တရာဝေါလ်ပေကန့်သတ်ထားသည်မဟုတ်ကြောင်းပေးထား, non-ထူးခြားတဲ့အမျိုးအစားများစာရင်းကိုအတော်လေးအလုပ်သမား-intensive ပါလိမ့်မယ်ရှုမြင်ကြသည်။

အတွင်းကွဲပြားစုစုပေါင်းလုပ်ဆောင်ချက်များကို၏လျှောက်လွှာ

SQL ကွဲပြားငြင်းခုံဆိုစုစုပေါင်း function ကိုအတူသုံးနိုင်တယ်။ ဒါပေမယ့်မင်းနှင့်မက်စ်သည်၎င်း၏လျှောက်လွှာမပါအကျိုးသက်ရောက်မှုရှိသည်, ဒါပေမယ့်ပေါင်းလဒ်သို့မဟုတ်ပျမ်းမျှတန်ဖိုးကိုတွက်ချက်တဲ့အခါမှာမရှိသလောက်အဘယ်သူမျှမအကောင့်ထဲသို့ထပ်ခါထပ်ခါယူရှိသည်မယ်လို့ဘယ်မှာအခြေအနေမျိုးဖြစ်ပါတယ်လိမ့်မယ်။

ငါတို့သည်ငါတို့၏ဂိုဒေါင်၏ပမာဏကိုစစ်ဆေးရန်နှင့်ဤတောင်းဆိုမှုကိုပို့ချင်ဆိုပါစို့, စတော့ရှယ်ယာအတွက်ကွိုင်၏စုစုပေါင်းအရေအတွက်က computes:

SELECT ပေါင်းလဒ် (Ostatki.count)

Ostatki FROM မှ

သို့သော်ကျနော်တို့မှပြောင်းလဲပစ်ပါလိမ့်မယ် အကယ်. တောင်းဆိုမှုအဖြေ 143. ကိုပေးမည်:

SELECT ပေါင်းလဒ် (ကွဲပြား Ostatki.count)

Ostatki FROM မှ

စိတျအပိုငျးနံပါတ်များကို 3 နဲ့ 7 ဝေါလ်ပေပါတူညီတဲ့ငွေပမာဏအတွက်စတော့ရှယ်ယာ၌ရှိကြ၏သကဲ့သို့ငါတို့သည်စုစုပေါင်း 119 ရရှိရန်။ သို့ရာတွင်ထိုသို့အဖြေကမှားကြောင်းသိသာသည်။

အများစုကတော့ SQL ကွဲပြား function ကိုရေတွက်အတွက်အသုံးပြုခဲ့သည်။ ဒါကြောင့်ကျနော်တို့ကအလွယ်တကူနောက်ခံပုံများမည်မျှထူးခြားတဲ့အမျိုးအစားများထွက်ရှာတွေ့နိုင်ပါသည်, ငါတို့မ:

SELECT count က (ကွဲပြား Oboi.type)

oboi FROM မှ

သာမန်စက္ကူနှင့်ကို double-layer ကိုဗီနိုင်းနှင့် Non-ရက်ထည် - နှင့် 5 ၏ရလဒ်ရရှိမည်ဖြစ်သည်။ ဒီဆိုင်ဖွင့်စုံတွဲတစ်တွဲတစ်ဒါဇင်လိပ်နှင့်ဝေါလ်ပေပါခေတ်မီအမျိုးအစားများကိုအမျိုးမျိုးမဟုတျကွောငျးဆိုလိုသော "သာလျှင်ကျနော်တို့ဝေါလ်ပေပါ 20 အမျိုးမျိုး, ကျော်ရှိတယ်": အကယ်စင်စစ်အားလုံးထိုကဲ့သို့သောအဖြစ်ကြော်ငြာများကိုမွငျ။

ဒါဟာတူညီတဲ့မေးမြန်းမှုအတွက်, သငျသညျအရေအတွက်ကွဲပြား attribute နဲ့တူမျိုးစုံလုပ်ဆောင်ချက်များကိုသတ်မှတ်, ထိုသို့မပါဘဲနိုင်သောစိတ်ဝင်စားစရာကောင်းဖြစ်ပါတယ်။ ဒါက Select'e အတွက်ကွဲပြားပစ္စုပ္ပန်အကြိမ်ပေါင်းများစွာနိုင်ပါတယ်ရှိရာသာခွအေနကေိုဖြစ်ပါတယ်။

ယင်းငြင်းခုံ၏အသုံးပြုမှုကိုစွန့်ခွာလိုက်တဲ့အခါ

SQL ကွဲပြားငြင်းခုံ၏အသုံးပြုမှုကိုကနေနှစ်ခုအမှုပေါင်းတစွန့်ပစ်ရပါမည်:

  1. သငျသညျစားပွဲတစ်ရွေးချယ်ရေးလုပ်ဆောင်စီထူးခြားတဲ့တန်ဖိုးယုံကြည်မှုရှိပါတယ်။ ဒါကြောင့် (DBMS အမျိုးအစားပေါ် မူတည်. ) ဆာဗာသို့မဟုတ် client ကိုတခုတခုအပေါ်မှာနောက်ထပ်ဝန်ကြောင့်ဤကိစ္စတွင်ခုနှစ်, အငြင်းအခုံများအသုံးပြုခြင်း, မသင့်လျော်သည်။
  2. သင်သည်သင်၏ data တွေကိုဆုံးရှုံးကြောက်နေကြတယ်။ ကျွန်တော်တို့ကိုရှင်းပြပါရစေ။

အမျိုးအစားနှင့်အရောင် - သညျဟုထငျသူဌေးနှစ်ခုသာကော်လံ၏အရိပ်အယောင်နှင့်အတူ, သငျသညျရှိသည်သောဝေါလ်ပေပါစာရင်းပြုစုရန်သင့်အားမေးသည်။ အလေ့အထထဲက, သင်ကွဲပြားအငြင်းအခုံပေး:

ကွဲပြား Oboi.type, Oboi.color SELECT

oboi FROM မှ

Oboi.type BY ORDER

နှင့် - အခြို့သောဒေတာများဆုံးရှုံး:

ပုံစံ

အရောင်

စက္ကူ

multicolor

စက္ကူကို double-အလွှာ

အဝါနုရောင်ရှိသော

ဗီနိုင်း

ညိုသော

ဗီနိုင်း

လိမ်မော်သီး

အထည်

ပန်းရောင်

မွေး

အဝါနုရောင်ရှိသော

မွေး

အဖြူ

ဒါဟာစက္ကူဝေါလ်ပေပါ (သမားရိုးကျနှင့် Dual-layer ကို) ကြှနျုပျတို့တကယ်တော့ပင်နှစ်ခုဆောင်းပါး (ကွဲပြားမရှိဘဲရလဒ်) ၏ကျနော်တို့ရဲ့အသေးစား table ထဲမှာ, တစ်ဦးတည်းသာစိတ်ထဲရှိသည်သောအထင်အမြင်ချီးမွမ်းစေခြင်းငှါ:

ပုံစံ

အရောင်

စက္ကူ

multicolor

စက္ကူ

multicolor

စက္ကူကို double-အလွှာ

အဝါနုရောင်ရှိသော

စက္ကူကို double-အလွှာ

အဝါနုရောင်ရှိသော

ဗီနိုင်း

ညိုသော

ဗီနိုင်း

လိမ်မော်သီး

အထည်

ပန်းရောင်

မွေး

အဖြူ

မွေး

အဝါနုရောင်ရှိသော

ဒါကြောင့်လုပ်ငန်းတာဝန်အပေါ် မူတည်. ၎င်း၏လျှောက်လွှာအပေါ်ဆုံးဖြတ်သတိထားနှင့်အရည်အချင်းဖြစ်ဖို့ငြင်းခုံကွဲပြားလိုအပ်ကြောင်းနှင့်အတူမည်သည့်တောင်းဆိုမှုကိုရေးသားခြင်း၌ရှိသကဲ့သို့။

ကွဲပြားအခြားရွေးချယ်စရာ

အားလုံးအငြင်းအခုံ - ကွဲပြားသည့်အငြင်းအခုံဆန့်ကျင်။ ၎င်း၏လျှောက်လွှာအတွက်ထပ်တန်းစီသိမ်းဆည်းထားသည်။ ဒါပေမယ့်က default ဒေတာဘေ့စအဖြစ်ကြောင့်အပေါငျးတို့သတန်ဖိုးများကိုဖော်ပြရန်လိုအပ်သောကြောင်းတွေ့ခြင်း, ငြင်းခုံအားလုံး - ကမဟုတ်ဘဲအမှန်တကယ် function ကိုငြင်းခုံထက်ခြေစစ်ပွဲဖြစ်ပါတယ်။ အကြှနျုပျတို့သညျယခုကွဲပြား (SQL) ကိုအသုံးပြုသည်ကိုနားလည်ကြောင်းမျှော်လင့်ပါတယ်။ ဖော်ပြချက်သင်ကွဲပြားခြားနားသောပြဿနာများကိုဖြေရှင်းရာတွင်ဤဆင်ခြေကို အသုံးပြု. များ၏ဖြစ်နိုင်ခြေနှင့် ပတ်သက်. အပြည့်အဝသတင်းအချက်အလက်များပေးပါ။ ဒါကြောင့်ထွက်လှည့်အဖြစ်ပြီးနောက်ရှိသမျှတို့, ၎င်း၏လျှောက်လွှာအတွက်ပင်ထိုကဲ့သို့သောရိုးရှင်းသောအငြင်းအခုံအချို့သောဒေတာဆုံးရှုံးနှင့်တိသတင်းအချက်အလက်များဖော်ပြရန်အလွန်မြင်သာထင်ဖြစ်နိုင်ခြေဖွက်ထားပေးသည်။

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 my.birmiss.com. Theme powered by WordPress.