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

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

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

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

Өгөгдлийн сангийн хүснэгтүүд нь асар их мэдээллийг агуулж байдаг тул хүснэгтийн бүх мөрийг татах шаардлага бага гардаг. Ихэвчлэн хүснэгтийн мэдээллийн нэг хэсгийг ямар нэгэн үйлдэлд зориулан татан авах нь элбэг тохиолдоно. Ийм тохиолдолд өгөгдлийг татан авахдаа хайлтын нөхцлийг хэрэглэнэ. Үүний тулд SELECT операторыг WHERE гэсэн түлхүүр үгтэй цуг ашиглана. Жишээ нь

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

Багцын боловсруулалт нь SQL үйлдлүүдийн багц нэг бол бүгд биелэгдэнэ эс бол бүгд биелэгдэхгүй гэсэн зарчмаар өгөгдлийн сангийн бүрэн бүтэн байдлыг хангаж өгдөг.

Шинэ захиалга нэмэх үйлдэл нь дараах алхамуудаас бүрдэнэ.

  • Өгөдлийн санд харилцагчийн тухай мэдээлэл байгаа эсэхийг шалгана. Хэрвээ мэдээлэл байхгүй бол нэмнэ
  • Харилцагчийн дугаарыг авна
  • Orders хүснэгтэд харилцагчийн хүснэгттэй холбоо бүхий харилцагчийн дугаар бүхий шинэ мөр нэмнэ
  • Orders  хүснэгтэд нэмэгдсэн шинэ мөрөөс захиалгын дугаарыг авна
  • Захиалгад орсон бараа бүрээр OrderItems хүснэгтэд захиалгын дугаараар Orders  хүснэгттэй, бүтээгдхүүний дугаараар Products хүснэгттэй холбогдсон шинэ мөрийг нэмнэ

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

Бид өмнө нь Тооцоологдох талбар үүсгэх хичээлд хүснэгтийн баганад завсарын нэр /alias/ хэрхэн өгөх тухай үзсэн. Үүнээс гадна SQL нь хүснэгтийн нэрэнд завсарын нэр /alias/ олгох боломжой байдаг. Энэ нь дараах хоёр үндсэн шалтгаантай.

  1. SQL-ийн илүү богино бичлэг
  2. Нэг SELECT операторт нэг хүснэгтийг олон дахин ашиглах боломжийг нээнэ

Дараах операторыг авч үзье

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

SQL-ийн өгөгдөл татах үйлдэл нь үр дүнгийн олонлог гэж нэрлэгдэх мөрийн цуглуулгатай ажилладаг. Өгөгдөл татах операторын нөхцлөөс хамааран үр дүнгийн олонлог нь хоосон эсвэл түүнээс их мөрүүд байна. Энгийн SELECT операторыг ашиглан эхний эсвэл сүүлийн, эсвэл дараагийн 10 мөрийг татан авах боломжгүй байдаг. Зарим үед мөрүүдийг шууд эсвэл тонгоруулсан дарааллаар нэг эсвэл хэд хэдэн удаа харах шаардлага гардаг. Энэ зорилгод курсорыг ашигладаг.

Курсор гэдэг нь серверт хадгалагдсан өгөгдлийн санд хандах шаардлага юм. Курсор нь SELECT операторын ажиллагаагаар бий болсон үр дүнгийн олонлог болохоос SELECT оператор биш.

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

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

интеграл бод

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

 

хязгаарыг бод.

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

 

утгыг ол.

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