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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

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

a ба b катеттай тэгш өнцөгт гурвалжин ерөнхий тэгш өнцөгтэй квадратыг багтаасан бол квадратын периметрийг ол.

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

 

функцийн графикийн (0,-1) цэгт татсан шүргэгч шулуун ба координатын тэнхлэгүүдээр хашигдсан мужийн талбайг ол.

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

 

тэнцэтгэл бишийн хамгийн их бүхэл шийдийг ол.

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