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

Өгөдлийн сангийн хүснэгтээс мэдээлэл татан авах операторыг 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-операторыг бичихэд хялбар болгодог хэдий ч шаардлагын бүтээмжийг бууруулдаг муу талтай.

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

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

SQL хэлний SELECT операторыг ашиглан хийж болох хамгийн хүчтэй үйлдэл нь хүснэгтүүдийг нэгтгэх болно. Иймээс нэгтгэл түүний бичлэгийн дүрмийг нарийн судлах нь SQL хэлийг эзэмших үйл явцын хамгийн чухал хэсэг байдаг.
Юуны өмнө нэгтгэлийг үр дүнтэй эзэмшихийн тулд холбоост /relation/ өгөгдлийн санг байгуулах үндэс, холбоост хүснэгтүүд гэдэг ойлголтын талаар тайлбарлах хэрэгтэй. Хичээлээр энэ ойлголтын тухай бүрэн хэмжээнд авч үзэхгүй хэдий ч хичээлийн материал танд хангалттай ойлголтыг өгч чадна.

  Нээгдсэн тоо: 3310 Нийтийн

SQL-операторт эрэмбэлэх дарааллыг зааж өгөөгүй бол өгөгдлийг хүснэгтэд байгаа байрлалын дагуу татан ирнэ. Энэ нь бичлэгүүд хүснэгтэд нэмэгдсэн дараалал байж болно. Гэхдээ бичлэгүүд дараа нь өөрчлөгдөх, утсгах зэрэг ажиллагаанд хамрагдсан бол дараалал нь ӨСУС үлдсэн зайг хэрхэн ашигласнаас шалтгаалах болно.
SELECT оператораар татан авч байгаа өгөгдлүүдийн дарааллыг тогтоохдоо ORDER BY гэсэн түлхүүр үгийг ашиглана.

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

Өмнөх хичээлээс бид хүснэгтийн өгөгдлүүдийн дүнг SQL статик функцээр хэрхэн авахыг мэдсэн. Гэхдээ бид өгөгдлүүдийн дүнг хүснэгтийн бүх бичлэгүүдийн хувьд WHERE-д заагдсан нөхцлийн дагуу авч байсан.
Тэгвэл бидэнд нийлүүлэгч хэдэн бараа санал болгосныг нийлүүлэгч бүрээр мэдэх шаардлагтай болсон гэж бодъё. Энэ асуудлыг шийдвэрлэхэд бид групп /бүлэг/-ыг хэрэглэнэ. Бүлэглэх нь бүх өгөгдлүүдийг логик хэсгүүдэд хувааснаар бидэнд энэ хэсгүүдэд статик функцуудыг ашиглах боломж олгодог.

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

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

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

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

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

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

 

[-252; 299) завсарт орших 18 -д үлдэгдэлгүй хуваагдах тоонуудын нийлбэрийг ол.

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

 

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

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