SQLab
O‘rganishMashqMasalalarArenaReyting
© 2026 SQLab · Toshkent
SQLab

SQL’ni o‘rnatmasdan, brauzerning o‘zida o‘rganing.

Platforma

  • O‘rganish
  • Mashq
  • Masalalar
  • Arena
  • Reyting

Kimlar uchun

  • Talabalar
  • Ustozlar
  • Universitetlar
© 2026 SQLab. Barcha huquqlar himoyalangan.O‘zbekistonda, talabalar uchun yaratilgan.
O‘rganishMashqMasalalarArenaReyting
0/26

Asoslar

  • Ma’lumotlar bazasi nima?
  • Birinchi SELECT
  • WHERE: kerakli qatorlarni tanlash
  • IN, BETWEEN, LIKE va NULL
  • Saralash, LIMIT va DISTINCT

Hisob-kitob

  • Ifodalar, funksiyalar va CASE
  • Sanalar bilan ishlash
  • COUNT, SUM, AVG, MIN, MAX
  • GROUP BY va HAVING

Jadvallarni ulash

  • Kalitlar va bog‘lanishlar
  • INNER JOIN
  • LEFT JOIN va juftsiz qatorlar
  • Bir nechta jadval va self join

Murakkab so‘rovlar

  • Ichki so‘rovlar
  • UNION, INTERSECT, EXCEPT
  • WITH: nomlangan so‘rovlar
  • Oyna funksiyalari

Jadval yaratish va o‘zgartirish

  • CREATE TABLE: turlar va cheklovlar
  • INSERT, UPDATE, DELETE
  • ALTER, DROP, TRUNCATE
  • Bazani to‘g‘ri loyihalash

Professional daraja

  • Indekslar va EXPLAIN
  • Tranzaksiyalar va ACID
  • VIEW: saqlangan so‘rovlar
  • Funksiyalar, protseduralar, triggerlar
  • Foydalanuvchilar, huquqlar, zaxira nusxa
O‘rganish/Hisob-kitob

Ifodalar, funksiyalar va CASE

069 daq

SELECT faqat ustunni ko‘rsatmaydi — u hisoblaydi ham. Bu darsda arifmetika, matn bilan ishlash va CASE bilan «agar … bo‘lsa» shartini o‘rganamiz.

Arifmetika

+ - * / va % (qoldiq) ishlaydi:

shop· O‘zgartirib ko‘ring
SELECT name, price, price * 0.88 AS discounted FROM products LIMIT 5;

Butun sonni butun songa bo‘lishga ehtiyot bo‘ling. PostgreSQL’da 7 / 2 = 3 (kasr qismi tashlanadi), MySQL’da esa 3.5000. Kasr kerak bo‘lsa, birini kasr qiling: 7 * 1.0 / 2.

Yaxlitlash: ROUND

shop· O‘zgartirib ko‘ring
SELECT name, ROUND(price / 12, 0) AS per_month FROM products LIMIT 5;

ROUND(son, n) — n ta xonagacha. Yana CEIL (yuqoriga) va FLOOR (pastga) bor.

Matn funksiyalari

Funksiya Nima qiladi
UPPER(s) / LOWER(s) katta / kichik harf
LENGTH(s) belgilar soni
TRIM(s) boshidagi va oxiridagi bo‘sh joylarni olib tashlaydi
SUBSTRING(s, 1, 3) 1-belgidan boshlab 3 ta belgi
REPLACE(s, 'a', 'b') almashtirish

Matnlarni ulash:

PostgreSQL’da || belgisi yoki CONCAT funksiyasi:

university· O‘zgartirib ko‘ring
SELECT first_name || ' ' || last_name AS full_name FROM students LIMIT 5;

NULL bilan hisob: COALESCE

NULL ishtirok etgan har qanday hisob NULL beradi: 5 + NULL = NULL. COALESCE(a, b) — a bo‘sh bo‘lsa, b ni oladi:

university· O‘zgartirib ko‘ring
SELECT first_name, COALESCE(scholarship, 0) AS scholarship FROM students LIMIT 8;

CASE — «agar … bo‘lsa»

university· O‘zgartirib ko‘ring
SELECT student_id, score,
       CASE
         WHEN score >= 86 THEN 'a’lo'
         WHEN score >= 71 THEN 'yaxshi'
         WHEN score >= 56 THEN 'qoniqarli'
         ELSE 'qoniqarsiz'
       END AS mark
FROM grades
LIMIT 8;

Shartlar yuqoridan pastga tekshiriladi, birinchi to‘g‘ri kelgani olinadi. Hech biri to‘g‘ri kelmasa — ELSE, u ham bo‘lmasa — NULL.

1Mashq

Har bir mahsulotning name ustunini va omborda qolgan mahsulotning umumiy qiymatini (price * stock) chiqaring.


2Mashq

Haydovchilarning first_name ustunini va reytingi bo‘yicha toifasini chiqaring: 4.8 va undan yuqori — 'top', qolganlari — 'oddiy', reytingi yo‘qlar — 'yangi'.


Esda qoldiring

  • SELECT ichida hisoblash mumkin; butun sonlarni bo‘lishda ehtiyot bo‘ling.
  • COALESCE(x, 0) — NULL o‘rniga qiymat qo‘yadi.
  • CASE WHEN … THEN … ELSE … END — shartga qarab qiymat tanlaydi.
Oldingi darsSaralash, LIMIT va DISTINCTKeyingi darsSanalar bilan ishlash

Mundarija

  • Arifmetika
  • Yaxlitlash: ROUND
  • Matn funksiyalari
  • NULL bilan hisob: COALESCE
  • CASE — «agar … bo‘lsa»
  • Esda qoldiring
O‘rganishMashqMasalalarArenaReyting

SQLab