Өгөгдлийг эрэмбэлэх

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

SELECT prod_name FROM Products ORDER BY prod_name;

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

Энэ бичлэг нь Өгөгдлийг татан авах хичээлд гарсан жишээтэй ижил боловч ORDER BY нь ӨСУС-д татан авсан өгөгдлүүдийг prod_name баганаар цагаан толгойн үсгийн дараалалаар эрэмбэлэхийг зааж өгнө. Тоонууд нь үсгүүдээс кодын хувьд өмнө байрладаг тул энд тоонуудаар эхэлсэн нэрүүд өмнө нь гарч ирсэн болно.

Хэд хэдэн баганаар эрэмбэлэх

Өгөгдлийг хэд хэдэн баганаар эрэмбэлэх шаардлага их тохиолддог. Жишээлбэл ажилчдын нэрсийг овог нэрээр нь, бүтээгдхүүнийг нэр, үйлдвэрлэсэн хугацаагаар эрэмбэлэх гэх мэтээр. Өгөгдлийг хэд хэдэн баганаар эрэмбэлэхийн тулд ORDER BY –д эрэмбэлэгдэх багануудын нэрийг таслалаар тусгаарлан бичиж өгдөг.

SELECT prod_id, prod_price, prod_name FROM Products ORDER BY prod_price, prod_name;

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

Энэ жишээ нь Products хүснэгтээс 3 баганыг татан эхлээд үнээр нь дараа нь нэрээр нь эрэмбэлэж байна. Олон баганаар эрэмбэлэхдээ ORDER BY -д заагдсан дарааллын дагуу эрэмбэлэгдэнэ. Өөрөөр хэлбэл дээрх жишээгээр prod_price талбарт ижил утгатай хэд хэдэн мөр байсан тохиолдолд үр дүн prod_name талбараар эрэмбэлэгдэнэ.

Баганы байрлалаар эрэмбэлэх

Эрэмбэлэх дарааллыг багануудын нэрээр өгөхөөс гадна баганы харьцангуй байрлалаар (энгийнээр баганы дугаараар) өгч болно. Жишээлбэл

SELECT prod_id, prod_price, prod_name FROM Products ORDER BY 2, 3; 

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

Операторын бичлэг нь ORDER BY д зөрж байгаа хэдий ч үр дүн өмнөхтэйгээ ижил байна. Энд эрэмбэлэх дарааллыг баганы нэрээр биш SELECT операторт байрлаж байгаа дарааллаар ORDER BY 2 гэдэг нь SELECT операторын баганы жагсаалтын 2 -р багана буюу prod_price –г зааж байгаа юм. Эндээс ORDER BY 2,3 нь ORDER BY prod_price, prod_name гэсэнтэй ижил болно. SELECT операторт нэрийг нь заагаагүй баганаар эрэмбэлэхэд энэ аргыг ашиглаж болохгүй.

Эрэмбэлэх дарааллыг тогтоох

Өгөгдлийг эрэмбэлэх анхдагч нөхцөл нь (А гаас Я) буюу өсөх дараалал байдаг хэдий ч  ORDER BY –д (Я гаас А) буурах дарааллыг өгч болдог. Үүнийг DESC гэсэн түлхүүр үгийн тусламжтайгаар хийнэ. Доорх жишээн дээр бүтээгдхүүний үнүүд буурах дарааллаар эрэмбэлэгдэж байна. Өөрөөр хэлбэл хамгийн эхэнд хамгийн их үнэтэйгээс эхэлнэ гэсэн үг.

SELECT prod_id, prod_price, prod_name FROM Products ORDER BY prod_price DESC, prod_name;

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

Дээрх жишээнээс харвал DESC -г зөвхөн prod_price баганад тавьж өгсөн болохоор бүтээгдхүүний үнэ буурах дарааллаар харин prod_name багана нь ердийн өсөх дарааллаар эрэмбэлэгдсэн байгаа нь харагдаж байна. Эндээс хэрвээ та хэд хэдэн баганаар буурах дарааллаар эрэмбэлэхийг хүсвэл буурах эрэмбэтэй багана бүрийн ард DESC түлхүүр үгийг тавьж өгөх шаардлагатай.
DESC гэсэн үг нь DESCENDING гэсэн үгний товчлол бөгөөд энэ хоёр үгний алиныг ч ашиглаж болно. Харин анхдагч утга болох ASC нь ASCENDING гэсэн үгний товчлол юм.

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

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

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

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

SELECT prod_name FROM Products;

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

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

Програмчлалын хэлнүүдийн адилаар SQL нь өгөгдлийг боловсруулах функцуудтэй байдаг.
Функц гэдэг нь өгөдлүүдийг боловсруулах, удирдах ажиллагааг хөнгөвчилөхөд зориулагдсан үйлдлүүд юм. Функцын жишээгээр бид өмнөх хичээлд мөрийн араас хоосон тэмдэгтийг устгахад ашигласан RTRIM() функцыг нэрлэж болно.
Юуны өмнө функцыг хэрхэн ашиглах талаар авч үзэхээс өмнө SQL-д функц ашиглах нь тодорхой асуудал үүсгэдэг гэдгийг тэмдэглэх нь зүйтэй. Бүх ӨСУС-д дэмждэг SQL операторуудаас (жишээ нь SELECT) ялгаатай нь ӨСУС-д төрөл бүрийн функцуудыг ашигладаг. Зөвхөн цөөн тооны функцууд зарим ӨСУС-д ижилхэн хэлбэртэй байдаг. Гэхдээ бүх төрлийн функцууд ӨСУС бүрд байдаг хэдий ч тэдгээрийг ашиглах нь ихээхэн зөрөөтэй байдаг. ӨСУС-д функцын ялгаатай байдлыг доорх хүснэгтээс харна уу.

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

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

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

Ямар нэгэн хүснэгтийн өгөгдлийг засварлахдаа UPDATE операторыг ашигладаг. Энэ операторыг хоёр янзаар ашигладаг.

  1. Хүснэгтийн тодорхой бичлэгийг өөрчлөх
  2. Хүснэгтийн бүх бичлэгийг өөрчлөх

Санамж: UPDATE операторыг ашиглахдаа маш болгоомжтой байхгүй бол хүснэгтийн бүх бичлэгийг алдаатай өөрчилж болохыг сануулъя. UPDATE операторыг ашиглахын өмнө хичээлийн материалтай гүйцэд танилцах хэрэгтэй.
 
Клиент-сервер бүтэцтэй системд UPDATE ашиглахын тулд ӨСУС-д хандах онцгой эрхтэй байхыг шаардаж магадгүй. Ийм эрх танд байгаа эсэхийг шалгаарай.

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

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

функцийн тодорхойлогдох мужийг ол.

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

 

g(x)=2x-3x2 нь f(x)=x2-x3 -ийн уламжлал бол -ийг ол.

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

 

хязгаарыг ол.

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