# SQL AS — ustun va jadvalga taxallus

> SQL AS bilan ustun va jadvalga taxallus (vaqtinchalik nom) berish: natija sarlavhasini o'zgartirish, hisoblangan ustunni nomlash va jadval taxallusi.

Manba: https://learncode.uz/sql/as-taxallus/
Sana: 2026-06-14

[SELECT](https://learncode.uz/sql/select) natijasida ustunlar jadvaldagi asl nomi bilan chiqadi:
`narx`, `soni`. Ba'zan bu nomni **vaqtincha o'zgartirish** kerak bo'ladi — natija
tushunarliroq bo'lsin yoki hisoblangan ustunga nom kerak bo'lsin. Buni
**`AS`** (taxallus) bajaradi.

## Ustun taxallusi

`AS` dan keyin ustunga natijada ko'rinadigan yangi nom beriladi:

```sql
SELECT nom AS mahsulot, narx AS narxi FROM mahsulotlar;
```

O'zingiz ishga tushirib ko'ring — so'rovni tahrirlashingiz ham mumkin:

```sql
SELECT nom AS mahsulot, narx AS "Narxi (so'm)"
FROM mahsulotlar LIMIT 5;
```

Natija sarlavhalari o'zgardi (ma'lumot o'sha):

| mahsulot | narxi |
|---|---|
| Olma | 8000 |
| Non | 3000 |
| ... | ... |

Muhim: `AS` faqat **natija ko'rinishini** o'zgartiradi. Jadvaldagi asl
ustun nomi (`nom`, `narx`) o'zgarmaydi.

> **Atama**
>
> **Taxallus** (alias) — ustun yoki jadvalga berilgan vaqtinchalik nom. U
> faqat shu so'rov davomida yashaydi. Xuddi taxallus — asl ism o'rniga
> qisqa yoki tushunarli nom.

## Hisoblangan ustunga nom berish

Taxallus, ayniqsa, **hisoblangan** ustunlarda kerak. Har mahsulotning
umumiy qiymatini (narx × soni) hisoblaymiz:

```sql
SELECT nom, narx * soni AS umumiy_qiymat FROM mahsulotlar;
```

Natija — yangi hisoblangan ustun aniq nom bilan:

| nom | umumiy_qiymat |
|---|---|
| Olma | 400000 |
| Non | 360000 |
| Sut | 360000 |
| Choy | 600000 |
| Banan | 350000 |
| Qatiq | 0 |
| Suv | 800000 |
| Guruch | 1080000 |

`AS umumiy_qiymat` bo'lmasa, baza bu ustunni `narx * soni` degan noqulay
nom bilan ko'rsatardi. Taxallus natijani toza qiladi.

## Bo'sh joyli taxallus

Taxallusda bo'sh joy kerak bo'lsa, uni **qo'shtirnoq** ichiga olasiz:

```sql
SELECT nom AS "Mahsulot nomi", narx AS "Narxi (so'm)" FROM mahsulotlar;
```

Natija sarlavhasi endi "Mahsulot nomi" va "Narxi (so'm)" bo'ladi — hisobot
uchun chiroyliroq.

## Jadval taxallusi

Jadvalga ham taxallus beriladi — odatda **qisqa harf**. Bu yakka jadvalda
kam foyda beradi, lekin bir nechta jadval bilan ishlaganda (keyingi
darsdagi `JOIN`) juda qulay:

```sql
SELECT m.nom, m.narx FROM mahsulotlar AS m WHERE m.narx > 10000;
```

Bu yerda `mahsulotlar` ga `m` taxallusi berildi, keyin ustunlar `m.nom`,
`m.narx` deb yoziladi. `JOIN` da ikki jadvalda bir xil nomli ustun bo'lsa,
aynan shu `m.` oldqo'shimchasi qaysi jadvaldan ekanini aniqlaydi.

> **Yodda tuting**
>
> `AS` so'zini yozish **shart emas**: `SELECT nom mahsulot` ham,
> `FROM mahsulotlar m` ham ishlaydi. Lekin `AS` yozilgani o'qishga aniqroq —
> "bu taxallus" ekani darhol ko'rinadi. Boshlanishida `AS` ni yozib yuring.

<Callout type="example" title="O'zingizni sinab ko'ring">
Namuna bazangizda sinang:

```sql
SELECT nom AS tovar, soni AS "Ombordagi soni" FROM mahsulotlar;
SELECT nom, narx * soni AS qiymat FROM mahsulotlar ORDER BY qiymat DESC;
```

Ikkinchi so'rov qiziq: hisoblangan `qiymat` taxallusini `ORDER BY` da
ishlatib, eng qimmatli zaxiraga ega mahsulotni tepaga chiqaradi (Guruch).
Taxallus tartiblashda ham ishlashiga e'tibor bering.
</Callout>

## Amaliy mashq

Ustunlarga nom bering:

1. `nom` ustuniga `mahsulot` taxallusini bering;
2. `narx` ga bo'sh joyli nom bering: `"Narxi (so'm)"`;
3. `AS` so'zini olib tashlang — taxallus baribir ishladimi?
4. jadvalga qisqa taxallus bering: `FROM mahsulotlar AS m`;
5. hisoblangan ustunga nom bering: `narx * soni AS jami`;
6. Ikki jadvalni `b` va `m` taxalluslari bilan bog'lang va natija
   ustunlariga ham taxallus bering: `m.nom AS mahsulot, b.soni AS dona`.

5-qadamda taxallus bermasangiz, ustun nomi qanday ko'rinadi?

## Qisqacha xulosa

- `SELECT ustun AS taxallus` — natijadagi ustun nomini o'zgartiradi (asl
  nom o'zgarmaydi).
- Taxallus **hisoblangan ustunlar** uchun ayniqsa kerak: `narx * soni AS
  umumiy_qiymat`.
- Bo'sh joyli taxallus qo'shtirnoq ichida: `AS "Mahsulot nomi"`.
- Jadval taxallusi (`mahsulotlar AS m`) — `JOIN` da ustunlarni ajratish
  uchun qulay.
- `AS` yozish shart emas, lekin aniqlik uchun tavsiya etiladi.

Keyingi darsda [`JOIN`](https://learncode.uz/sql/join) — bir nechta jadvalni **bog'lash**ni
ko'ramiz. Aynan shu SQL'ni haqiqatan kuchli qiladigan imkoniyat.
