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

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

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

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

Та энэ хичээлийг уншиж байна гэдэг нь танд ямар нэгэн байдлаар өгөгдлийн сантай ажиллах шаардлага байгаа гэдгийг баталж байна. SQL хэл нь яг үүнд зориулагдсан ойлгохын тулд юуны өмнө өгөгдлийн сангийн технологийн үндсэн ойлголтуудтай танилцах нь маш чухал.
Бид өгөгдлийн санг бараг өдөр бүр ашиглаж байдаг. Жишээ нь өөрийн майлыг шалгахдаа нэр, нууц үгээ оруулах, интернетээс ямар нэгэн мэдээллийг хайх, ажил дээрээ байгууллагынхаа дотоод сүлжээнд нэвтрэх, банкны картын үлдэгдлээ шалгах г.м маш олон жишээг дурьдаж болно.  Гэсэн хэдий ч бараг ихэнх хүмүүст өгөгдлийн сан гэж юу болох нь ойлгомжгүй хэвээрээ үлддэг. Иймээс бид хичээлээ өгөгдлийн сантай хамааралтай хамгийн чухал тодорхойлолтуудаас эхэлье.

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

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

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

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

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

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

SELECT оператор нь SQL шаардлагыг илэрхийлнэ. Бидний өмнө үзсэн бүх SELECT операторууд нь өгөгдлийг нэг хүснэгтээс татах энгийн SQL шаардлага байсан.

Шаардлага – Ямар нэгэн SQL операторыг хэлнэ. Гэхдээ энэ хэллэг нь голдуу SELECT операторт хамаарагдана.

SQL хэлэнд дэд шаардлага үүсгэж болдог. Яагаад дэд шаардлага хэрэгтэй болсон вэ? Энэ ойлголтыг жишээгээр тайлбарлах нь илүү.

Санамж: MySQL ӨСУС-ийн 4.1 ээс дээш хувилбар дэд шаардлагыг дэмждэг

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

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

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

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

 

4 хүнийг нэг эгнээнд хичнээн янзаар жагсах боломжтой вэ?

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

 

тэгшитгэлийн хамгийн бага эерэг шийдийг ол.

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