NULL, IS NULL, ISNULL, COALESCE, INT, DECIMAL, NVARCHAR, DATE, BIT, CAST
9-sinfBusiness Intelligence5-hafta · 15-darsQiymat yo'q degani nol emas
NULL ni almashtirish
Ustun uchun to'g'ri tur
ORDER BY Narx DESC bilan TOP 1 qaysi mahsulotni beradi (eng qimmati Noutbuk)?
DESC bo'yicha birinchi — eng katta narx.Qiymat yo'q degani nol emas
SELECT Ism FROM Mijozlar
WHERE Telefon IS NULL;
SELECT Ism FROM Mijozlar
WHERE Telefon IS NOT NULL;
SELECT Ism FROM Mijozlar
WHERE Telefon = NULL;
IS NULL — Vali, Dilnoza (2 qator). IS NOT NULL — Ali, Sana, Jasur (3 qator). = NULL — 0 qator!WHERE Telefon = NULL nechta qator qaytaradi?
= NULL hech qachon TRUE bermaydi; IS NULL kerak.NULL ni almashtirish
SELECT Ism,
ISNULL(Telefon, N'Yo''q') AS Tel,
COALESCE(Telefon, Email, N'Aloqa yo''q') AS Aloqa
FROM Mijozlar;
SELECT Ism FROM Mijozlar
WHERE Telefon <> N'901234567';
NULL telefonli Vali va Dilnoza ham chiqmaydi. Ularni ham olish uchun OR Telefon IS NULL qo'shing.COALESCE(NULL, NULL, N'C', N'D') nimani qaytaradi?
NULL bo'lmagan qiymat: C.Ustun uchun to'g'ri tur
SELECT Ism, RoyxatSana
FROM Mijozlar
WHERE RoyxatSana >= '2025-01-01';
SELECT Ism FROM Mijozlar
WHERE Faol = 1;
SELECT CAST(7 AS DECIMAL(5,2)) / 2 AS Natija,
CAST(Narx AS INT) AS ButunNarx
FROM Mahsulotlar;
YYYY-MM-DD formatida yoziladi. RoyxatSana >= '2025-01-01' — Sana, Dilnoza, Jasur. Faol = 1 — Ali, Vali, Dilnoza. CAST(7 AS DECIMAL(5,2)) / 2 natijasi 3.50.Pul miqdori uchun qaysi tur mos?
DECIMAL aniq o'nlik sonlarni saqlaydi.NULL ni = 0 yoki = '' bilan topib bo'lmaydi: IS NULL kerak.
NULL bo'lgan qatorlarni topadi
Qiymati bor qatorlarni topadi
Ikki parametrli almashtirish (SQL Server)
Birinchi NULL bo'lmagan qiymat (standart)
IS NULL bilan bo'sh qatorlarni toping.
ISNULL yoki COALESCE bilan ko'rinadigan qiymat bering.
<> va = natijalarida NULL qatorlari yo'qolmaganini kuzating.
| Tur | Nima saqlaydi | Misol |
|---|---|---|
INT | butun son | 25 |
DECIMAL(12,2) | aniq o'nlik son | 80000.50 |
NVARCHAR(30) | unicode matn | N'Ali' |
DATE | sana | '2025-01-10' |
BIT | 0 yoki 1 | 1 |
Pastga bosing: tanlash qoidalari
INT.DECIMAL.NVARCHAR, sana uchun DATE, ha/yo'q uchun BIT.
SELECT Ism, Telefon
FROM Mijozlar;
SELECT Ism,
ISNULL(Telefon, N'Yo''q') AS Tel
FROM Mijozlar;
IS NULL 2 ta qatorni topadi, = NULL — hech qaysini.
IS NOT NULL bilan chiqaring.WHERE Telefon <> N'901234567' nechta qator beradi? Nega Vali va Dilnoza chiqmaydi? Ularni ham olish uchun so'rovni tuzating.Mahsulotlar narxini CAST bilan butun songa aylantiring.Qiymat yo'q; IS NULL / IS NOT NULL.
NULL ni almashtirish.
INT, DECIMAL, NVARCHAR, DATE, BIT, CAST.
Uyga vazifa: Mijozlar jadvalida NULL va tur so'rovlari.
COUNT, SUM, AVG, MIN, MAX
6-hafta · 16-dars