SlideShare a Scribd company logo
Лекц  9 ӨС-ийн боловсруулалт Агуулга  Select команд  Хүснэгтүүдийг холбох  энгийн холболт  гадаад холболт  Эрэмбэлэлт,бүлэглэлт
ӨС-ийн боловсруулалт  Select команд Үндсэн үйлдлүүд Хүснэгтүүд холбох -Энгийн холболт   SELECT  < хүснэгт1>.<талбар1>, <хүснэгт1>.<талбар2>,  <хүснэгт2>.<талбар1>, <хүснэгт2>. <талбар2>,...  FROM  <хүснэгт1> INNER JOIN < хүснэгт2> ON  <хүснэгт1>.<түлхүүр >=<хүснэгт2>.<түлхүүр > Талбарыг ямар хүснэгтээс уншихыг заахын тулд хүснэгтийн нэр, талбарын нэр хоёрыг  цэгээр тусгаарлаж  өгнө
ӨС-ийн боловсруулалт  Select команд Энгийн холболт Жишээ нь: Оюутан ба оюутны мэргэжил хүснэгтийг мэргэжлийн кодоор холбож оюутны мэргэжлийг дэлгэрүүлж гаргах  Select  St.*, Pr. Prof_Name  From   Students St  Inner   Join  Profession Pr  ON  St. Prof_ID = Pr. Pr_ID  Тайлбар: St.*- оюутан хүснэгтээс бүх талбарыг уншина
ӨС-ийн боловсруулалт  Select команд Энгийн холболт Зэрэгцээ энгийн холболт  Жишээ Оюутны 7 хоногийн цагийн ачааллыг бодох зорилгоор  Хичээл( Course) , Хичээлийн хэлбэр( Course_Type) , Оюутны хичээл сонголт( Student _Course)  гэсэн 3 хүснэгтийг холбоё SELECT  St_Crs. St_ID, Crs. *, Crs_T.Type,  Crs_T. Hour  FROM  Course Crs  INNER   JOIN  Course_type Crs_T    ON  Crs. Crs_ID=Crs_T. Crs_ID,     INNER JOIN  Student _Course St_Crs    ON  Crs. Crs_ID=St_Crs.Crs_ID  INTO  Student_Hour
ӨС-ийн боловсруулалт  Select команд Энгийн холболт Үр дүнгийн  Student_Hour  хүснэгт  St_ID  Crs_ID Crs_Name Credit Type Hour  HW03D025 SW207 ӨС 3 Лекц 2 HW03D025 SW207 ӨС 3 Семинар 2 HW03D025 SW230 Веб дизайн 2 Лекц 2 HW03D025 SW230 Веб дизайн 2 Лаборатор 1 SW03D026 SW207 ӨС 3 Лекц 2 SW03D026 SW207 ӨС 3 Семинар 2 SW03D026 SW230 Веб дизайн 2 Лекц 2 SW03D025 SW230 Веб дизайн 2 Лаборатор 1
ӨС-ийн боловсруулалт  Select команд Энгийн холболт Холболтын үр дүнгээс бичлэг сонгох  Жишээ Програм хангамжийн оюутнуудын 7 хоногийн цагийн ачааллыг бодоё гэвэл бичлэг сонгох үйлдэл нэмэгдэнэ  SELECT  St_Crs. St_ID, Crs. *, Crs_T.Type,  Crs_T. Hour  FROM  Course Crs  INNER JOIN  Course_type Crs_T    ON  Crs. Crs_ID=Crs_T. Crs_ID,     INNER   JOIN  Student _Course St_Crs    ON  Crs. Crs_ID=St_Crs.Crs_ID  WHERE  Left(St_ID, 2)=“SW” INTO   SW_student_hour
ӨС-ийн боловсруулалт  Select команд Энгийн холболт Эсвэл  SELECT  St_Crs. St_ID, Crs. *, Crs_T.Type,  Crs_T. Hour  FROM S tudent_Hour WHERE  Left(St_ID, 2)=“SW” INTO   SW_student_hour Хуудас 4 дээрх  Select – ийн  Student_Hour  гэсэн хайлтыг ашиглаж болно
ӨС-ийн боловсруулалт  Select команд Энгийн холболт Үр дүнгийн SW_s tudent_hour  хүснэгт  St_ID  Crs_ID Crs_Name Credit Type Hour  SW03D026 SW207 ӨС 3 Лекц 2 SW03D026 SW207 ӨС 3 Семинар 2 SW03D026 SW230 Веб дизайн 2 Лекц 2 SW03D025 SW230 Веб дизайн 2 Лаборатор и 1
ӨС-ийн боловсруулалт  Select команд Үндсэн үйлдлүүд Гадаад холболт  SELECT команданд зүүн гадаад холболтыг  Left Outer Join  гэж заадаг  Select  < харьцаа1>.<талбар1>,<харьцаа1>.<талбар2>,...  <харьцаа2>.<талбар1>, <харьцаа2>. <талбар2>, ... From  <эх харьцаа>  Left Outer   Join  <охин харьцаа>  On  <харьцаа1>.<түлхүүр> =<харьцаа2>.<түлхүүр>
ӨС-ийн боловсруулалт  Select команд Гадаад холболт Баруун гадаад холболтыг  Right Outer Join  гэж заадаг  Select  < харьцаа1>.<талбар1>, харьцаа1>.<талбар2>,...  <харьцаа2>.<талбар1>,<харьцаа2>.<талбар2>,…  From  <охин харьцаа>  Right Outer   Join  <эх харьцаа> On  <харьцаа1>.<түлхүүр> =<харьцаа2>.<түлхүүр>
ӨС-ийн боловсруулалт  Select команд Гадаад холболт Жишээ нь:  оюутан  ба  мэргэжил  хүснэгтүүдийг гадаадаар холбох  Select  St. *, Pr. Prof_Name  From  Student St   Left Outer   Join  Profession Pr   On  St. Prof_ID = Pr. Prof_ID  Оюутны код  Оюутны нэр  Мэрг. код    Мэрг. нэр  SW99B027 Д.Болор  D484105 Комп.ПХ  SW99B028 Х.Тамир  D484105 Комп.ПХ  SW99B029 M.Сувд  D484110 Комп.ТХ  SW99B039 С. Баяр  D484112  
Зэрэгцээ гадаад холболт  Жишээ1: Оюутны цагийн ачааллыг бодохын тулд хичээл сонголт ( Student _Course)  гэсэн гол мэдээллийг агуулж буй хүснэгтийг эх болгон, түүн рүү ( Course) , хичээлийн хэлбэрийг ( Course_Type)  хоёрыг   зэрэг холбоё SELECT  St_Crs. St_ID, Crs. *, Crs_T.Type,  Crs_T. Hour  FROM  Student _Course St_Crs    LEFT OUTER   JOIN  Course Crs  ON  St_Crs.Crs_ID=Crs.Crs_ID,   LEFT OUTER   JOIN  Course_type Crs_T  O N  St_Crs.   Crs_ID=Crs_T. Crs_ID   INTO  Student_Hour  ӨС-ийн боловсруулалт  Select команд Гадаад холболт
ӨС-ийн боловсруулалт  Select команд Гадаад холболт Дараалсан гадаад холболт  Жишээ1-ийг оюутны хичээл сонголт ( Student _Course)  гэсэн гол мэдээллийг агуулж буй хүснэгтийг эх болгон, түүн рүү 1-рт хичээлийг   ( Course) , 2-рт хичээлийн хэлбэрийг ( Course_Type)  холбож бас болох боловч илүү Select хийгдэнэ. SELECT  St_Crs. St_ID, Crs. *, Crs_T.Type,  Crs_T. Hour  FROM (SELECT  St_Crs. St_ID, Crs. *  FROM  Student _Course St_Crs  LEFT OUTER   JOIN  Course Crs  ON  St_Crs.Crs_ID=Crs.Crs_ID) LEFT OUTER   JOIN  Course_type Crs_T  O N  St_Crs.   Crs_ID=Crs_T. Crs_ID  INTO  Student_Hour
Үр ашиггүй  холболтын жишээ  Харин жишээ1-ийг хичээл( Course) , хичээлийн хэлбэрийг ( Course_Type)  гэсэн мэдээллийг түрүүлж   холбоход тухайн улиралд ордоггүй, нэг ч оюутан сонгоогүй хичээлүүд үр ашиггүй холбогдоно  SELECT  St_Crs. St_ID, Crs. *, Crs_T.Type,  Crs_T. Hour  FROM (SELECT  Crs. *, Crs_T.Type,  Crs_T. Hour  FROM  Course Crs  INNER JOIN  Course_type Crs_T  ON  Crs.Crs_ID=Crs_T. Crs_ID ) LEFT OUTER   JOIN  Student _Course St_Crs  O N  Crs.Crs_ID=St_Crs.   Crs_ID  INTO  Student_Hour  ӨС-ийн боловсруулалт  Select команд Гадаад холболт
ӨС-ийн боловсруулалт  Select команд  Хүснэгтүүдийг холбох Холболт хийхэд анхаарах зүйлс   Үр ашиггүй холболт хийхгүй байх  Тайлан боловсруулалтанд орох гол мэдээллийн хүснэгтүүдээ эхлэж холбох  ямар нэгэн vйл ажиллагааны бvртгэл дэх  ө г ө гдлийг нэгтгэсэн тайлан  Гол мэдээллийг нэгтгэж боловсруулсны дараа бүртгэл дэх кодуудыг дэлгэрүүлж задлах зорилгоор лавлахуудыг холбож байх  Лавлахуудыг хооронд нь түрүүлж холбохгүй байх
ӨС-ийн боловсруулалт  Select команд  Эрэмбэлэлт Хайлтын үр дүнг эрэмбэлэх  Хайлтын үр дүнг тодорхой эрэмбэтэй гаргая гэвэл Select командыг дараахи хэлбэрээр хэрэглэнэ  Select  < талбарын жагсаалт>  From  <хүснэгтийн нэр>     Order By  <эрэмбэлэх түлхүүр>   Тайлбар:  ORDER BY <эрэмбэлэх түлхүүр> - эрэмбэлэх түлхүүр талбар  Олон талбараар эрэмбэлэх үед талбаруудыг таслалаар тусгаарлаж заана
ӨС-ийн боловсруулалт  Select команд  Бүлэглэлт Бүлэглэх Select командын ерөнхий хэлбэр  SELECT   <талбаруудын жагсаалт>  FROM  <хүснэгтийн нэр>   GROUP BY  <бүлэглэх түлхүүр>  [ HAVING  <бичлэг сонгох нөхцөл>]  Тайлбар: GROUP BY <бүлэглэх түлхүүр>- бүлэглэх түлхүүр Олон талбараар бүлэглэх үед талбаруудыг таслалаар тусгаарлана  HAVING <нөхцөл>-бүлэглэлтийн үр дүнгээс бичлэг сонгох  HAVING –ийг GROUP BY заалтууртай давхар хэрэглэнэ
ӨС-ийн боловсруулалт  Select команд  Бүлэглэлт Бүлэглэлтийн жишээ  Багшийн хичээлийн нэгтгэлийг гаргах  Select  T_ID  As  Багшийн код,  COUNT  (хичээлийн код)  As  Нийт хичээл,   Sum  (кредит)  As  Нийт кредит  From  COURSE  Group by  T_ID  Order by  T_ID  Into   Lecturers_Courses
ӨС-ийн боловсруулалт  Select команд  Бүлэглэлт 2 хичээлтэй, 8-аас илүү кредит заасан багш нарын нэгтгэлийг гаргах  Select   T_ID  As  Багшийн код,  Count  (хичээлийн код)  As  Нийт хичээл,  Sum  (кредит)  As  Нийт кредит  From  COURSE  Group by  T_ID  Having  Нийт хичээл=2  and  Нийт кредит>=8  Into  Teacher_Courses
ӨС-ийн боловсруулалт  Select команд  Бүлэглэлт Үр дүнгийн  Student_Hour  хүснэгтээс оюутны хичээлийн ачааллыг  улирлаар  нэгтгэж гаргая    Үүсэх бүлгүүд HW SW St_ID  Crs_ID Credit Type Hour  HW03D025 SW207 3 Лекц  2 HW03D025 SW207 3 Семинар 2 HW03D025 SW230 2 Лекц 2 HW03D025 SW230 2 Лаборатор 1 SW03D026 SW207 3 Лекц 2 SW03D026 SW207 3 Семинар 2
ӨС-ийн боловсруулалт  Select команд  Бүлэглэлт Нэгтгэлийн үр дүн  Тэнхмийн код  Суусан хичээлийн дундаж Дундаж цаг  HW 20.5 41 SW 20.1 45 BA 14.5 29
ӨС-ийн боловсруулалт  Select команд  Бүлэглэлт Завсрын  Query1 Select   St_ID  As   Оюутны_ код,  Count(Crs_Type)  As   Суусан цаг.тоо ,  Sum(Crs_Type_Hour*15)  As   Суусан нийт  цаг  From  Student_hour  Group by  St_ID, Crs_ID  Into  Query1   1 дэх шатанд оюутан тус бvрээр бvлэглэж нэгтгэлийг хийнэ St_Id Crs_ID Credit Type Hour  HW03D025 SW207 3 Лекц 2 HW03D025 SW207 3 Семинар 2 HW03D025 SW230 2 Лекц 2 HW03D025 SW230 2 Лабора-тор 1 … … … … … SW03D026 SW207 3 Лекц 2 SW03D026 SW207 3 Семинар 2 Оюутны  код Суусан цаг.тоо  Суусан нийт  цаг  HW03D025 4 105 ... .. ... SW03D026 2 60
ӨС-ийн боловсруулалт  Select команд  Бүлэглэлт Завсрын  Query1 Select   Left( Оюутны  код, 2 )  As  Тэнхмийн код,  Avg ( Суусан цаг. тоо )  As  Суусан хичээлийн дундаж, Avr( Суусан нийт  цаг)  As  Дундаж цаг  From  Query1 Group by Left( Оюутны  код, 2 )  Into  Department_Totals  Оюутны  код  Суусан цаг.тоо  Суусан нийт  цаг  HW03D025 4 105 ... .. ... SW03D026 2 60 Тэнхмийн  код  Суусан хичээлийн дундаж  Дундаж цаг  HW 20.5 41 SW 20.1 45 BA 14.5 29
Унших материал “ ӨС” ном, бүлэг 6  хуудас 62-71 хуудас 76-81 Харьцаа алгебрийн илэрхийлэл Select командыг харьцуулж унших

More Related Content

PPT
Pp Lect8 1
PDF
Jquickprofileupload
PPTX
Yeni microsoft office power point sunusu
PPT
first pitch
PPTX
Masa Depanku Dito 6c
PPT
Edlt528 group3 vision_learningproject
PPT
Pp Lect7 1
PDF
PER-54/BC/2011
Pp Lect8 1
Jquickprofileupload
Yeni microsoft office power point sunusu
first pitch
Masa Depanku Dito 6c
Edlt528 group3 vision_learningproject
Pp Lect7 1
PER-54/BC/2011

Viewers also liked (20)

PPT
C A R A C T E RÍ S T I C A S D E L D E S A R R O L L O O R G A N I Z A C I...
PPT
Ponencia Carme Valls 22 11 09
PPT
Pp Lect4 5
KEY
Junkyard
PPTX
Masa Depanku Gilang 6 B
PDF
Letters are Amazing
PPT
Adjectives and adverbs
PPT
Scrapbook jan14
ODP
Album aula 8
PPT
Pp Lect9 10 1
KEY
Junkyard
PDF
Hable uncharted2(siggraph%202010%20 advanced%20realtime%20rendering%20course)
PDF
Thuiswinkelupdate 2009
PDF
PHP, Cloud And Microsoft Symfony Live 2010
PPT
Cuadros De Solrao
PDF
Guide to Planning Your Next Web Project
KEY
Double Your Commissions in Half the Time Doing Short Sales
PPT
Waste cycle
KEY
Ruby on Rails survival guide of an aged Java developer
PPT
slide to delete
C A R A C T E RÍ S T I C A S D E L D E S A R R O L L O O R G A N I Z A C I...
Ponencia Carme Valls 22 11 09
Pp Lect4 5
Junkyard
Masa Depanku Gilang 6 B
Letters are Amazing
Adjectives and adverbs
Scrapbook jan14
Album aula 8
Pp Lect9 10 1
Junkyard
Hable uncharted2(siggraph%202010%20 advanced%20realtime%20rendering%20course)
Thuiswinkelupdate 2009
PHP, Cloud And Microsoft Symfony Live 2010
Cuadros De Solrao
Guide to Planning Your Next Web Project
Double Your Commissions in Half the Time Doing Short Sales
Waste cycle
Ruby on Rails survival guide of an aged Java developer
slide to delete
Ad

Similar to Pp Lect9 (20)

PPT
Pp Lect8
DOCX
Lab2 Query
PPTX
database 12
PPT
Pp Lect6
PPTX
Database 11
PPT
Pp Lect6 1
PPTX
Se304 lec7
PPTX
Se304 lec8
PPT
Pp Lect10 11
PDF
Lab6 db
PDF
PDF
Lab6 db
PPT
Pp Lect1 1
PDF
Lab6 db
PPTX
Se304 lec11
PPTX
database 10
PDF
Access sem2
DOCX
Rdbms bie daalt
PPTX
Se304 lec6
Pp Lect8
Lab2 Query
database 12
Pp Lect6
Database 11
Pp Lect6 1
Se304 lec7
Se304 lec8
Pp Lect10 11
Lab6 db
Lab6 db
Pp Lect1 1
Lab6 db
Se304 lec11
database 10
Access sem2
Rdbms bie daalt
Se304 lec6
Ad

More from ulziibaatar (20)

PPT
Lecture 3 4
PPT
Lecture 2
PPT
Lecture 1
DOCX
лабораторийн ажил 5
DOCX
лабораторийн ажил 4
DOCX
лабораторийн ажил 3
DOCX
лабораторийн ажил 2
DOCX
лабораторийн ажил 1
DOCX
Lab4 Report
PPT
Pp Lect12 13
PPT
Access Table
PPT
Pp Lect41 1
PPT
Pp Lect13 1
PPT
Pp Lect5
DOC
PPT
Pp Lect4
DOC
Proj Example2
DOC
Proj Example1
DOC
Proj Descr
PPT
Pp Lect3 1
Lecture 3 4
Lecture 2
Lecture 1
лабораторийн ажил 5
лабораторийн ажил 4
лабораторийн ажил 3
лабораторийн ажил 2
лабораторийн ажил 1
Lab4 Report
Pp Lect12 13
Access Table
Pp Lect41 1
Pp Lect13 1
Pp Lect5
Pp Lect4
Proj Example2
Proj Example1
Proj Descr
Pp Lect3 1

Pp Lect9

  • 1. Лекц 9 ӨС-ийн боловсруулалт Агуулга Select команд Хүснэгтүүдийг холбох энгийн холболт гадаад холболт Эрэмбэлэлт,бүлэглэлт
  • 2. ӨС-ийн боловсруулалт Select команд Үндсэн үйлдлүүд Хүснэгтүүд холбох -Энгийн холболт SELECT < хүснэгт1>.<талбар1>, <хүснэгт1>.<талбар2>, <хүснэгт2>.<талбар1>, <хүснэгт2>. <талбар2>,... FROM <хүснэгт1> INNER JOIN < хүснэгт2> ON <хүснэгт1>.<түлхүүр >=<хүснэгт2>.<түлхүүр > Талбарыг ямар хүснэгтээс уншихыг заахын тулд хүснэгтийн нэр, талбарын нэр хоёрыг цэгээр тусгаарлаж өгнө
  • 3. ӨС-ийн боловсруулалт Select команд Энгийн холболт Жишээ нь: Оюутан ба оюутны мэргэжил хүснэгтийг мэргэжлийн кодоор холбож оюутны мэргэжлийг дэлгэрүүлж гаргах Select St.*, Pr. Prof_Name From Students St Inner Join Profession Pr ON St. Prof_ID = Pr. Pr_ID Тайлбар: St.*- оюутан хүснэгтээс бүх талбарыг уншина
  • 4. ӨС-ийн боловсруулалт Select команд Энгийн холболт Зэрэгцээ энгийн холболт Жишээ Оюутны 7 хоногийн цагийн ачааллыг бодох зорилгоор Хичээл( Course) , Хичээлийн хэлбэр( Course_Type) , Оюутны хичээл сонголт( Student _Course) гэсэн 3 хүснэгтийг холбоё SELECT St_Crs. St_ID, Crs. *, Crs_T.Type, Crs_T. Hour FROM Course Crs INNER JOIN Course_type Crs_T ON Crs. Crs_ID=Crs_T. Crs_ID, INNER JOIN Student _Course St_Crs ON Crs. Crs_ID=St_Crs.Crs_ID INTO Student_Hour
  • 5. ӨС-ийн боловсруулалт Select команд Энгийн холболт Үр дүнгийн Student_Hour хүснэгт St_ID Crs_ID Crs_Name Credit Type Hour HW03D025 SW207 ӨС 3 Лекц 2 HW03D025 SW207 ӨС 3 Семинар 2 HW03D025 SW230 Веб дизайн 2 Лекц 2 HW03D025 SW230 Веб дизайн 2 Лаборатор 1 SW03D026 SW207 ӨС 3 Лекц 2 SW03D026 SW207 ӨС 3 Семинар 2 SW03D026 SW230 Веб дизайн 2 Лекц 2 SW03D025 SW230 Веб дизайн 2 Лаборатор 1
  • 6. ӨС-ийн боловсруулалт Select команд Энгийн холболт Холболтын үр дүнгээс бичлэг сонгох Жишээ Програм хангамжийн оюутнуудын 7 хоногийн цагийн ачааллыг бодоё гэвэл бичлэг сонгох үйлдэл нэмэгдэнэ SELECT St_Crs. St_ID, Crs. *, Crs_T.Type, Crs_T. Hour FROM Course Crs INNER JOIN Course_type Crs_T ON Crs. Crs_ID=Crs_T. Crs_ID, INNER JOIN Student _Course St_Crs ON Crs. Crs_ID=St_Crs.Crs_ID WHERE Left(St_ID, 2)=“SW” INTO SW_student_hour
  • 7. ӨС-ийн боловсруулалт Select команд Энгийн холболт Эсвэл SELECT St_Crs. St_ID, Crs. *, Crs_T.Type, Crs_T. Hour FROM S tudent_Hour WHERE Left(St_ID, 2)=“SW” INTO SW_student_hour Хуудас 4 дээрх Select – ийн Student_Hour гэсэн хайлтыг ашиглаж болно
  • 8. ӨС-ийн боловсруулалт Select команд Энгийн холболт Үр дүнгийн SW_s tudent_hour хүснэгт St_ID Crs_ID Crs_Name Credit Type Hour SW03D026 SW207 ӨС 3 Лекц 2 SW03D026 SW207 ӨС 3 Семинар 2 SW03D026 SW230 Веб дизайн 2 Лекц 2 SW03D025 SW230 Веб дизайн 2 Лаборатор и 1
  • 9. ӨС-ийн боловсруулалт Select команд Үндсэн үйлдлүүд Гадаад холболт SELECT команданд зүүн гадаад холболтыг Left Outer Join гэж заадаг Select < харьцаа1>.<талбар1>,<харьцаа1>.<талбар2>,... <харьцаа2>.<талбар1>, <харьцаа2>. <талбар2>, ... From <эх харьцаа> Left Outer Join <охин харьцаа> On <харьцаа1>.<түлхүүр> =<харьцаа2>.<түлхүүр>
  • 10. ӨС-ийн боловсруулалт Select команд Гадаад холболт Баруун гадаад холболтыг Right Outer Join гэж заадаг Select < харьцаа1>.<талбар1>, харьцаа1>.<талбар2>,... <харьцаа2>.<талбар1>,<харьцаа2>.<талбар2>,… From <охин харьцаа> Right Outer Join <эх харьцаа> On <харьцаа1>.<түлхүүр> =<харьцаа2>.<түлхүүр>
  • 11. ӨС-ийн боловсруулалт Select команд Гадаад холболт Жишээ нь: оюутан ба мэргэжил хүснэгтүүдийг гадаадаар холбох Select St. *, Pr. Prof_Name From Student St Left Outer Join Profession Pr On St. Prof_ID = Pr. Prof_ID Оюутны код Оюутны нэр Мэрг. код   Мэрг. нэр SW99B027 Д.Болор D484105 Комп.ПХ SW99B028 Х.Тамир D484105 Комп.ПХ SW99B029 M.Сувд D484110 Комп.ТХ SW99B039 С. Баяр D484112  
  • 12. Зэрэгцээ гадаад холболт Жишээ1: Оюутны цагийн ачааллыг бодохын тулд хичээл сонголт ( Student _Course) гэсэн гол мэдээллийг агуулж буй хүснэгтийг эх болгон, түүн рүү ( Course) , хичээлийн хэлбэрийг ( Course_Type) хоёрыг зэрэг холбоё SELECT St_Crs. St_ID, Crs. *, Crs_T.Type, Crs_T. Hour FROM Student _Course St_Crs LEFT OUTER JOIN Course Crs ON St_Crs.Crs_ID=Crs.Crs_ID, LEFT OUTER JOIN Course_type Crs_T O N St_Crs. Crs_ID=Crs_T. Crs_ID INTO Student_Hour ӨС-ийн боловсруулалт Select команд Гадаад холболт
  • 13. ӨС-ийн боловсруулалт Select команд Гадаад холболт Дараалсан гадаад холболт Жишээ1-ийг оюутны хичээл сонголт ( Student _Course) гэсэн гол мэдээллийг агуулж буй хүснэгтийг эх болгон, түүн рүү 1-рт хичээлийг ( Course) , 2-рт хичээлийн хэлбэрийг ( Course_Type) холбож бас болох боловч илүү Select хийгдэнэ. SELECT St_Crs. St_ID, Crs. *, Crs_T.Type, Crs_T. Hour FROM (SELECT St_Crs. St_ID, Crs. * FROM Student _Course St_Crs LEFT OUTER JOIN Course Crs ON St_Crs.Crs_ID=Crs.Crs_ID) LEFT OUTER JOIN Course_type Crs_T O N St_Crs. Crs_ID=Crs_T. Crs_ID INTO Student_Hour
  • 14. Үр ашиггүй холболтын жишээ Харин жишээ1-ийг хичээл( Course) , хичээлийн хэлбэрийг ( Course_Type) гэсэн мэдээллийг түрүүлж холбоход тухайн улиралд ордоггүй, нэг ч оюутан сонгоогүй хичээлүүд үр ашиггүй холбогдоно SELECT St_Crs. St_ID, Crs. *, Crs_T.Type, Crs_T. Hour FROM (SELECT Crs. *, Crs_T.Type, Crs_T. Hour FROM Course Crs INNER JOIN Course_type Crs_T ON Crs.Crs_ID=Crs_T. Crs_ID ) LEFT OUTER JOIN Student _Course St_Crs O N Crs.Crs_ID=St_Crs. Crs_ID INTO Student_Hour ӨС-ийн боловсруулалт Select команд Гадаад холболт
  • 15. ӨС-ийн боловсруулалт Select команд Хүснэгтүүдийг холбох Холболт хийхэд анхаарах зүйлс Үр ашиггүй холболт хийхгүй байх Тайлан боловсруулалтанд орох гол мэдээллийн хүснэгтүүдээ эхлэж холбох ямар нэгэн vйл ажиллагааны бvртгэл дэх ө г ө гдлийг нэгтгэсэн тайлан Гол мэдээллийг нэгтгэж боловсруулсны дараа бүртгэл дэх кодуудыг дэлгэрүүлж задлах зорилгоор лавлахуудыг холбож байх Лавлахуудыг хооронд нь түрүүлж холбохгүй байх
  • 16. ӨС-ийн боловсруулалт Select команд Эрэмбэлэлт Хайлтын үр дүнг эрэмбэлэх Хайлтын үр дүнг тодорхой эрэмбэтэй гаргая гэвэл Select командыг дараахи хэлбэрээр хэрэглэнэ Select < талбарын жагсаалт> From <хүснэгтийн нэр> Order By <эрэмбэлэх түлхүүр> Тайлбар: ORDER BY <эрэмбэлэх түлхүүр> - эрэмбэлэх түлхүүр талбар Олон талбараар эрэмбэлэх үед талбаруудыг таслалаар тусгаарлаж заана
  • 17. ӨС-ийн боловсруулалт Select команд Бүлэглэлт Бүлэглэх Select командын ерөнхий хэлбэр SELECT <талбаруудын жагсаалт> FROM <хүснэгтийн нэр> GROUP BY <бүлэглэх түлхүүр> [ HAVING <бичлэг сонгох нөхцөл>] Тайлбар: GROUP BY <бүлэглэх түлхүүр>- бүлэглэх түлхүүр Олон талбараар бүлэглэх үед талбаруудыг таслалаар тусгаарлана HAVING <нөхцөл>-бүлэглэлтийн үр дүнгээс бичлэг сонгох HAVING –ийг GROUP BY заалтууртай давхар хэрэглэнэ
  • 18. ӨС-ийн боловсруулалт Select команд Бүлэглэлт Бүлэглэлтийн жишээ Багшийн хичээлийн нэгтгэлийг гаргах Select T_ID As Багшийн код, COUNT (хичээлийн код) As Нийт хичээл, Sum (кредит) As Нийт кредит From COURSE Group by T_ID Order by T_ID Into Lecturers_Courses
  • 19. ӨС-ийн боловсруулалт Select команд Бүлэглэлт 2 хичээлтэй, 8-аас илүү кредит заасан багш нарын нэгтгэлийг гаргах Select T_ID As Багшийн код, Count (хичээлийн код) As Нийт хичээл, Sum (кредит) As Нийт кредит From COURSE Group by T_ID Having Нийт хичээл=2 and Нийт кредит>=8 Into Teacher_Courses
  • 20. ӨС-ийн боловсруулалт Select команд Бүлэглэлт Үр дүнгийн Student_Hour хүснэгтээс оюутны хичээлийн ачааллыг улирлаар нэгтгэж гаргая Үүсэх бүлгүүд HW SW St_ID Crs_ID Credit Type Hour HW03D025 SW207 3 Лекц 2 HW03D025 SW207 3 Семинар 2 HW03D025 SW230 2 Лекц 2 HW03D025 SW230 2 Лаборатор 1 SW03D026 SW207 3 Лекц 2 SW03D026 SW207 3 Семинар 2
  • 21. ӨС-ийн боловсруулалт Select команд Бүлэглэлт Нэгтгэлийн үр дүн Тэнхмийн код Суусан хичээлийн дундаж Дундаж цаг HW 20.5 41 SW 20.1 45 BA 14.5 29
  • 22. ӨС-ийн боловсруулалт Select команд Бүлэглэлт Завсрын Query1 Select St_ID As Оюутны_ код, Count(Crs_Type) As Суусан цаг.тоо , Sum(Crs_Type_Hour*15) As Суусан нийт цаг From Student_hour Group by St_ID, Crs_ID Into Query1 1 дэх шатанд оюутан тус бvрээр бvлэглэж нэгтгэлийг хийнэ St_Id Crs_ID Credit Type Hour HW03D025 SW207 3 Лекц 2 HW03D025 SW207 3 Семинар 2 HW03D025 SW230 2 Лекц 2 HW03D025 SW230 2 Лабора-тор 1 … … … … … SW03D026 SW207 3 Лекц 2 SW03D026 SW207 3 Семинар 2 Оюутны код Суусан цаг.тоо Суусан нийт цаг HW03D025 4 105 ... .. ... SW03D026 2 60
  • 23. ӨС-ийн боловсруулалт Select команд Бүлэглэлт Завсрын Query1 Select Left( Оюутны код, 2 ) As Тэнхмийн код, Avg ( Суусан цаг. тоо ) As Суусан хичээлийн дундаж, Avr( Суусан нийт цаг) As Дундаж цаг From Query1 Group by Left( Оюутны код, 2 ) Into Department_Totals Оюутны код Суусан цаг.тоо Суусан нийт цаг HW03D025 4 105 ... .. ... SW03D026 2 60 Тэнхмийн код Суусан хичээлийн дундаж Дундаж цаг HW 20.5 41 SW 20.1 45 BA 14.5 29
  • 24. Унших материал “ ӨС” ном, бүлэг 6 хуудас 62-71 хуудас 76-81 Харьцаа алгебрийн илэрхийлэл Select командыг харьцуулж унших