Өгөгдлийг татан авах

Өгөдлийн сангийн хүснэгтээс мэдээлэл татан авах операторыг SELECT гэдэг. SELECT оператороор хүснэгтээс мэдээлэл татахдаа дор хаяж юу татан авах гэж байгаа, хаанаас татах гэсэн хоёр зүйлийг зааж өгнө.

Нэг баганыг татан авах

SELECT prod_name FROM Products;

Командын үр дүн

Энэ жишээ нь Products хүснэгтээс prod_name гэсэн баганыг татан авахад SELECT операторыг хэрхэн ашиглахыг үзүүлж байна. Татан авах баганы нэрийг SELECT операторын араас шууд өгөөд түлхүүр үг FROM –ын араас өгөгдөл татан авах хүснэгтийн нэрийг өгнө.

Хэд хэдэн баганыг татан авах

Хүснэгтээс хэд хэдэн баганыг татан авахдаа SELECT операторын араас татан авах багануудын нэрийг таслалаар тусгаарлан бичиж өгнө. Гэхдээ сүүлийн баганы нэрийн ард таслал тавьж болохгүй. Энэ нь алдаа болно.

SELECT prod_id, prod_name, prod_price FROM Products;

Командын үр дүн

Энэ жишээ нь Products хүснэгтээс prod_id, prod_name, prod_price гэсэн багануудыг татан авахад SELECT операторыг хэрхэн ашиглахыг үзүүлж байна.

Бүх баганыг татан авах

SELECT операторыг ашиглан нэг болон хэд хэдэн баганы татан авч болохоос гадна группын тэмдэгт (*) ашиглан багана бүрийг бичихгүйгээр хүснэгтийн бүх баганы өгөгдлийг татан авч болдог.

SELECT * FROM Products;

Санамж

  • SQL-операторт байгаа илүү хоосон зайг /space/ боловсруулах явцдаа хасдаг. Иймээс SQL-операторыг нэг мөрөнд болон олон мөрөнд хуваан бичиж болдог. Урт хэмжээтэй SQL-операторыг олон мөрөнд хуваан бичих нь түүнийг унших , алдааг хянахад тохиромжтой байдаг.
  • Хэд хэдэн SQL-операторууд нь (;) тэмдэгтээр таслагдсан байх ёстой. Ихэнх ӨСУС-д нэг SQL-операторын ард (;) тэмдэгт тавихыг шаарддаггүй. Гэхдээ таны ажиллаж байгаа ӨСУС нь SQL-операторыг биелүүлэхдээ ардаа заавал (;) тэмдэгтийг тавихыг шаардаж болно.
  • SQL-операторууд нь жижиг том тэмдэгтүүдийг мэдэрдэггүй. Иймд SELECT, select, Select гэж бичсэн операторуудад ялгаа байхгүй. Ихэнх програм зохиогчид SQL-операторын түлхүүр үгнүүдийг томоор харин хүснэгтийн болон баганы нэрүүдийг жижгээр бичдэг
  • SQL-операторууд форматлагдаагүй үр дүнг буцаадаг. Форматлах нь үзүүлэх асуудалтай холбоотой болохоос өгөгдөл татан авахтай холбогдолгүй. Тэгэхлээр үзүүлэх арга нь тухайн татан авсан өгөгдлүүдийг үзүүлж байгаа програмын ажиллагаанаас шалтгаална.
  • Группын тэмдэгтийг (*) гарцаагүй шаардлагатай тохиолдолд ашиглаж байгаарай. Тэмдэгтийг ашиглах нь SQL-операторыг бичихэд хялбар болгодог хэдий ч шаардлагын бүтээмжийг бууруулдаг муу талтай.

Мэдээлэл таалагдсан бол найзуудтайгаа хуваалцаарай.

  Нээгдсэн тоо: 3317 Төлбөртэй

Энэ хичээлээр бид SQL хэлний нилээд чухал болоод хүндхэн ойлголтууд болох хязгаарлалт, индекс, триггер гэсэн өгөгдлийг удирдах өргөтгөсөн боломжуудын талаар авч үзнэ.

Хязгаарлалт гэж юу вэ?

Холбоост өгөгдлийн сан нь өгөгдлүүдийг олон хүснэгтүүдэд хадгалж байдаг бөгөөд хүснэгт бүр нь өөр хүснэгтүүдийн өгөгдлүүдтэй холбогдолтой мэдээллийг хадгалж байдаг. Нэг хүснэгтийг нөгөө хүснэгттэй холбохдоо түлхүүрийг ашигладаг. Эндээс хобоосын түвшингийн бүрэн байдал гэсэн ойлголт гарч ирнэ. Холбоост өгөгдлийн санг зохих ёсоор ажиллуулахын тулд түүний хүснэгтүүдийн мэдээллүүд зөв орсон байх шаардлагатай. Жишээ нь Orders хүснэгтэд захиалгын мэдээлэл харин OrderItems хүснэгтэд захиалгын нарийвчилсан мэдээллийг хадгалахын тулд та OrderItems хүснэгтэд байх захиалгын дугаар нь Orders хүснэгтэд яг байгаа гэдэгт итгэлттэй байх ёстой. Мөн түүнчлэн Orders хүснэгтэд байх харилцагчийн дугаар нь Customers хүснэгтэд орхигдсон байх ёсгүй.

  Нээгдсэн тоо: 2104 Бүртгүүлэх

Өмнөх хичээлд үзсэн жишээнүүд нь бүгд өгөгдлүүдийг зөвхөн ганцхан нөхцлөөр татан авч байсан билээ. Тэгвэл WHERE –д AND эсвэл OR гэсэн түлхүүр үгнүүдийг ашиглан хайлтын нөхцлийг өргөтгөж болно. Хайлтын нөхцлийг хэрхэн өргөтгөхийг жишээн дээр авч үзье.

SELECT prod_id, vend_id, prod_name, prod_price FROM Products 
WHERE vend_id='DLL01' AND prod_price<=4;

  Нээгдсэн тоо: 1933 Төлбөртэй

Үзүүлбэр /view/ - энэ бол виртуал хүснэгт. Хүснэгт өгөгдөл хадгалж байхад үзүүлбэр шаардлагууд хадгалж өгөгдлүүдийг хэрэгцээтэй үед татаж байдагт эдгээрийн гол ялгаа оршино. Үзүүлбэр /view/-г илүү ойлгохын тулд тодорхой жишээ авч үзье. Хүснэгтүүдийн нэгтгэл хичээлд үзсэн жишээг харъя. Энд бид 3 хүснэгтээс SELECT оператораар өгөгдөл татсан.
Жич: Үзүүлбэр гэдэг орчуулга нь нэг их оновчтой болоогүй байж болох талтай. Иймд орчуулгын оронд view гэдэг хэллэгээр нь шууд сурах нь дөхөмтэй байж болно.

  Нээгдсэн тоо: 4066 Төлбөртэй

SQL хэл нь өгөгдлийн сангийн мэдээллүүдийг удирдаад зогсохгүй өгөгдлийн сан болон хүснэгтүүдтэй хамааралтай үйлдлүүдийг гүйцэтгэх боломжтой байдаг. Хүснэгтийг үүсгэх хоёр янзын арга байдаг.

  1. Ихэнх ӨСУС нь өгөгдлийн санд хүснэгт үүсгэх, тэдгээрийг удирдах интерактив администраторын хэрэгсэлтэй байдаг.
  2. Хүснэгтүүдийг SQL хэлний операторуудын тусламжтайгаар удирдаж болно

Хүснэгтийг програмын аргаар үүсгэхдээ SQL хэлний CREATE TABLE операторыг ашиглана. Та интерактив хэрэгсэл ашиглан хүснэгтийг удирдах бүх ажиллагаа нь танд мэдэгдэхгүй боловч үнэндээ SQL хэлний операторуудыг ашиглан хийгддэг гэдгийг хэлэх нь зүйтэй.
Хүснэгтийг үүсгэх операторын бүхий л боломжийг үзэх нь манай хичээлийн зорилго биш. Бид зөвхөн үндсэн ойлголтыг үзэх болно. Таны ӨСУС-ийн онцлогоос хамаарсан нэмэлт боломжуудын тухай мэдэхийг хүсвэл ӨСУС-ийн бичиг баримтыг сайтар үзээрэй.

Үйл явдал /event/ тодорхой үйлдэл хийгдсэн талаар системд мэдэгддэг. Хэрвээ бид энэхүү үйлдлийг ажиглах хэрэгтэй бол яг энд…

Нээгдсэн тоо : 387

 

Манай төсөл олон хуудсуудтай болон тэдгээрийн хооронд динамикаар шилжилт хийж байгаа ч тухайн үед шилжилт хийгдсэн хуудаст тохирох…

Нээгдсэн тоо : 483

 

Зочин (Visitor) паттерн классуудыг өөрчлөхгүйгээр тэдгээрийн обьектуудын үйлдлийг тодорхойлох боломжийг олгоно. Зочин хэвийг ашиглахдаа классуудын хоёр ангилалыг тодорхойлно.…

Нээгдсэн тоо : 462

 

Лямбда-илэрхийлэл нь нэргүй аргын хураангуй бичилтийг илэрхийлнэ. Лямбда-илэрхийлэл утга буцаадаг, буцаасан утгыг өөр аргын…

Нээгдсэн тоо : 534

 

Кодийн сайжруулалт /рефакторинг/ хичээлээр програмийн кодоо react -ийн зарчимд нийцүүлэн компонентод салгасан.…

Нээгдсэн тоо : 597

 

Хадгалагч (Memento) хэв обьектын дотоод төлвийг түүний гадна гаргаж дараа нь хайрцаглалтын зарчмыг зөрчихгүйгээр обьектыг сэргээх боломжийг олгодог.

Нээгдсэн тоо : 595

 

Делегаттай нэргүй арга нягт холбоотой. Нэргүй аргуудыг делегатийн хувийг үүсгэхэд ашигладаг.
Нэргүй аргуудын тодорхойлолт delegate түлхүүр үгээр…

Нээгдсэн тоо : 743

 

Математикт харилцан урвуу тоонууд гэж бий. Ямар нэгэн тооны урвуу тоог олохдоо тухайн тоог сөрөг нэг зэрэг дэвшүүлээд…

Нээгдсэн тоо : 887

 

Төсөлд react-router-dom санг оруулан чиглүүлэгчдийг бүртгүүлэн тохируулсан Санг суулган тохируулах хичээлээр бид хуудас…

Нээгдсэн тоо : 874

 
Энэ долоо хоногт

олон гишүүнтийн язгуурууд x1, x2, x3 (x1<x2<x3) бол
1.
2. x1, x2, x3 арифметик прогрес үүсгэх бол
3. Уул прогрессын ялгавар
4.

Нээгдсэн тоо : 1341

 

sin90 -ийг олно уу.

Жич: Хатуу самар даа. Сурагчид барна гэхэд хүнд болов уу. ЕБС-ийн хүрээний аргаар л бодолтыг хийж байгаа тул бодолтыг харвал гайгүй ч юм шиг санагдаж магадгүй гоё бодлого.

Нээгдсэн тоо : 552

 

тэгшитгэлийг бод.

Жич: Бодох арга орж ирж байна уу. Найз нөхөд, багштайгаа хамжаад үзээрэй. Иймэрхүү бодлогууд сэтгэлгээг хөгжүүлэх, арга техникт суралцахад тустай. 

Нээгдсэн тоо : 817