Uni VBA Access-da ma'lumotlar bazasiga qanday yuborish kerak.

Kontaktlar / topshirish

Golovna

2 Ajoyib o'quvchi

SQL so'rovlarini qo'llashni MS Access da SQL so'rovlarini yozishda o'rganish va mashq qilish mumkin. Bitta SQL bayonoti boshqasiga joylashtirilishi mumkin.

U qayta zaryadlanadi - to'ldirishning o'rtasida to'ldirishdan boshqa hech narsa yo'q.
Qoida tariqasida, so'rov WHERE bandiga qo'shiladi.
Qo'shimchalardan foydalanishning boshqa mumkin bo'lgan usullari mavjud.

Q011 ga sozlang. m_income jadvalida keltirilgan m_product jadvalidagi mahsulotlar haqidagi ma'lumotlar ko'rsatiladi:

U qayta zaryadlanadi - to'ldirishning o'rtasida to'ldirishdan boshqa hech narsa yo'q.
Qoida tariqasida, so'rov WHERE bandiga qo'shiladi.
TANLASH *

m_mahsulotdan WHERE id IN (m_income FROM product_id ni tanlang);

Q012 ga sozlang.
Mahsulotlar ro'yxati m_product jadvalida ko'rsatiladi, ammo m_outcome jadvalida kodlar yo'q:
WHERE id IN YO'Q (m_outcome FROM product_id ni tanlang);
Q013 tomonidan quvvatlanadi.

Ushbu SQL so'rovi m_outcome jadvalida emas, balki m_income jadvalidagi kodlar va mahsulot nomlarining noyob ro'yxatini ko'rsatadi: DISTINCT mahsulot_identifikatorini tanlang, sarlavha

FROM m_income INNER JOIN m_product
Qoida tariqasida, so'rov WHERE bandiga qo'shiladi.
ON m_income.product_id=m_product.id

WHERE product_id IN YO'Q (m_natijadan mahsulot_identifikatorini tanlang); Q014 ga sozlang.


m_category jadvali nomlari M harfi bilan boshlanadigan toifalarning noyob ro'yxatini ko'rsatadi:
DISTINCT sarlavhasini tanlang

QAYERDA "M*" kabi sarlavha; Q015 tomonidan quvvatlanadi.

Yozuvdagi maydonlar ustidagi arifmetik amallar va yozuvdagi maydonlarni qayta nomlash (taxallus) misoli.
Bunday holda, tovarlarni sotish to'g'risidagi teri yozuvi uchun sotish miqdori qoplanadi = miqdor * foydaning narxi va hajmi, ruxsat etilgan taqdirda, foyda sotish summasi uchun 7 yuzga teng bo'ladi:
DISTINCT sarlavhasini tanlang

miqdori*narx/100*7 AS foyda FROM m_outcome;

Q016 tomonidan quvvatlanadi.
Arifmetik amallarni tahlil qilish va soddalashtirish orqali siz hisoblash tezligini oshirishingiz mumkin:
Dt, mahsulot_identifikatori, summa, narx, summa*narx AS natija_sumini tanlang,
natija_summi*0,07 AS foyda

Q017 ga sozlang. SUM, COUNT, miqdor, AVG, arifmetik o'rtacha, MAX, maksimal qiymat, MIN, minimal qiymat kabi funksiyalar yig'ma funksiyalar deyiladi. Hidi ma'nosiz ma'noga ega bo'ladi va ularni qayta ishlagandan keyin xuddi shu ma'noga aylanadi. Butt hamshiraga qo'shimcha yordam uchun miqdor va narxni jamlaydi

agregat funktsiyalari

SUM.

"Do'kon" boshlang'ich loyihasining tavsifi

Bog'lanish diagrammasi jadvali

Tavsif jadvali

m_category - mahsulot toifalari

m_income - tovarlarning kelishi

m_outcome - tovarlarni yo'qotish

m_product - isbot, mahsulot tavsifi

m_supplier - yetkazib beruvchi; Pochta xodimlari haqida ma'lumot m_unit - guvoh;

dunyodagi birliklar

Maqsadli dumbalarni amaliy tekshirish uchun,

asosiy material

, onalarga g'amxo'rlik dasturini kuchaytirish kerak:

Microsoft Access 2003 yoki yangi.

MS Access-dan SQL-ni so'rang.

boshoq

Jadval qo'shish uchun asosiy paneldagi jadval nomini bosing: Jadval maydonlarini tahrirlash rejimiga o'tish uchun yuqori paneldagi Dizayn rejimini tanlang: SQL so'rovi natijasini ko'rsatish uchun Kirish panelidagi so'rov nomini bosing:

SQL tahrirlash rejimiga o'tish uchun yuqori panelda SQL rejimini tanlang: SQL yozing.

MS Access-dan foydalaning.


TANLASH: 1-10

Ichimlikda SQL bayonoti

U qayta zaryadlanadi - to'ldirishning o'rtasida to'ldirishdan boshqa hech narsa yo'q.
SELECT ma'lumotlar bazasi jadvalidan tanlaydi.

SQL Q001 kiriting.Keraksiz maydonlarni kerakli ketma-ketlikdan olib tashlash uchun SQL dan foydalanaman: SELECT dt, product_id, summa

m_daromaddan;


TANLASH: 1-10

SQL Q002 so'radi. Qaysi dasturda m_product jadvalining barcha maydonlarini ko'rsatish uchun SQL yulduz belgisi (*) ishlatiladi, aks holda u m_product munosabatlarining barcha maydonlarini olib tashlagan ko'rinadi:

U qayta zaryadlanadi - to'ldirishning o'rtasida to'ldirishdan boshqa hech narsa yo'q.
FROM m_product;


Zapit

SQL Q003. DISTINCT buyrug'i takrorlanadigan yozuvlarni o'chirish va noyob yozuvlarning identifikatorini o'chirish uchun ishlatiladi:

U qayta zaryadlanadi - to'ldirishning o'rtasida to'ldirishdan boshqa hech narsa yo'q.
FROM m_product;


DISTINCT mahsulot_identifikatorini tanlang

SQL Q004 so'radi. Jadvaldan kerakli yozuvlarni tanlash uchun aqliy tanlovni aniqlaydigan turli mantiqiy ifodalardan foydalaning.

U qayta zaryadlanadi - to'ldirishning o'rtasida to'ldirishdan boshqa hech narsa yo'q.
FROM m_product;


WHERE iborasidan keyin paydo bo'lishi mantiqiyroq.

m_income jadvalidan qiymatlari 200 dan yuqori bo'lganlar uchun barcha yozuvlarni olish misoli: QAYERDA miqdori>200;

SQL Q007 so'radi.


Aqlli ongni ifodalash uchun mantiqiy operatsiyalardan foydalaning AND (bo'g'in), OR (dizyunksiya) va EMAS (mantiqiy ketma-ketlik).
Mana m_outcome jadvalidan summa qiymati 20 dan va narx qiymati 10 dan katta bo'lgan barcha yozuvlarni chiqarish misoli:

Narxi FROM m_outcome



QAYERDA miqdori=20 VA narxi>=10;

SQL Q008 so'radi. Ikki yoki undan ortiq jadvallarni birlashtirish uchun INNER JOIN, LEFT JOIN, RIGHT JOIN ko'rsatmalaridan foydalaning.

Joriy dastur uchun m_income jadvalidan dt, product_id, summa, narx maydonlari va m_product jadvalidan sarlavha maydoni olinadi.


Mahsulotlar ro'yxati m_product jadvalida ko'rsatiladi, ammo m_outcome jadvalida kodlar yo'q:

m_income jadvali yozuvi m_product jadvali yozuviga m_income.product_id qiymati va m_product.id qiymati bilan bir vaqtda ulanadi:" And dt=#6/12/2011#; !} !}

ON m_income.product_id=m_product.id; SQL Q009 so'radi.

U qayta zaryadlanadi - to'ldirishning o'rtasida to'ldirishdan boshqa hech narsa yo'q.
TSOMUda SQL yozuvi ISHENGY DO SAVEN IN DVI Rechi: 1) Matn bitta panjada ("); 2) sana #masyan/day/ryk # formatida chiziladi. sut 12 chervenya 2011 RUR Sana formatini o'zgartirish #6/12/2011#:


WHERE id IN YO'Q (m_outcome FROM product_id ni tanlang);
SELECT dt, product_id, nom, summa, narx

WHERE title="Milk

SQL Q010 yozing.

SQL so'rovlarini qo'llashni MS Access da SQL so'rovlarini yozishda o'rganish va mashq qilish mumkin. Bitta SQL bayonoti boshqasiga joylashtirilishi mumkin.

U qayta zaryadlanadi - to'ldirishning o'rtasida to'ldirishdan boshqa hech narsa yo'q.
BETWEEN ko'rsatmasi tanlangan diapazondagi qiymatning haqiqiyligini tekshirish uchun ishlatiladi.


2011 yilning 1 va 30 kunlari orasida topilgan mahsulotlar haqidagi ma'lumotlarni ko'rsatish uchun SQL dan foydalanaman:

Q011 ga sozlang. m_income jadvalida keltirilgan m_product jadvalidagi mahsulotlar haqidagi ma'lumotlar ko'rsatiladi:

U qayta zaryadlanadi - to'ldirishning o'rtasida to'ldirishdan boshqa hech narsa yo'q.
BETWEEN ko'rsatmasi tanlangan diapazondagi qiymatning haqiqiyligini tekshirish uchun ishlatiladi.


FROM m_income INNER JOIN m_product

m_mahsulotdan WHERE id IN (m_income FROM product_id ni tanlang);

QAYERDA dt #6/1/2011# va #6/30/2011#;


Mahsulotlar ro'yxati m_product jadvalida ko'rsatiladi, ammo m_outcome jadvalida kodlar yo'q:
WHERE id IN YO'Q (m_outcome FROM product_id ni tanlang);
SQL yozing.

Ushbu SQL so'rovi m_outcome jadvalida emas, balki m_income jadvalidagi kodlar va mahsulot nomlarining noyob ro'yxatini ko'rsatadi: DISTINCT mahsulot_identifikatorini tanlang, sarlavha

MS Access-dan foydalaning.


Qoida tariqasida, so'rov WHERE bandiga qo'shiladi.
TANLASH: 11-20

WHERE product_id IN YO'Q (m_natijadan mahsulot_identifikatorini tanlang); Q014 ga sozlang.


m_category jadvali nomlari M harfi bilan boshlanadigan toifalarning noyob ro'yxatini ko'rsatadi:
Bitta SQL bayonoti boshqasiga joylashtirilishi mumkin.

QAYERDA "M*" kabi sarlavha; Q015 tomonidan quvvatlanadi.

U qayta zaryadlanadi - to'ldirishning o'rtasida to'ldirishdan boshqa hech narsa yo'q.


Bunday holda, tovarlarni sotish to'g'risidagi teri yozuvi uchun sotish miqdori qoplanadi = miqdor * foydaning narxi va hajmi, ruxsat etilgan taqdirda, foyda sotish summasi uchun 7 yuzga teng bo'ladi:
Bitta SQL bayonoti boshqasiga joylashtirilishi mumkin.

miqdori*narx/100*7 AS foyda FROM m_outcome;

Qoida tariqasida, so'rov WHERE bandiga qo'shiladi.


Arifmetik amallarni tahlil qilish va soddalashtirish orqali siz hisoblash tezligini oshirishingiz mumkin:
Dt, mahsulot_identifikatori, summa, narx, summa*narx AS natija_sumini tanlang,
Qo'shimchalardan foydalanishning boshqa mumkin bo'lgan usullari mavjud.

Q017 ga sozlang. SUM, COUNT, miqdor, AVG, arifmetik o'rtacha, MAX, maksimal qiymat, MIN, minimal qiymat kabi funksiyalar yig'ma funksiyalar deyiladi.

Xushbo'y hid neytral qiymatga ega bo'ladi va ishlov berilgandan keyin u bir xil qiymatga aylanadi.


TANLASH: 1-10

Masalan, SUM qo'shimcha yig'indisi funktsiyalari uchun miqdor va narxni qo'shing: SUMM (summa*narx) Jami_sum sifatida tanlang

Q019 sozlang.


Bir qator agregat funktsiyalarni tanlashga misol:
Sum(sum) ni Summa_summa, AVG(summa) ASQA Summa_AVG,
TANLASH: 1-10

MAX(summa) AS Summa_Maks, Min(summa) AS Summa_Min, Hisob (*) AS Jami_son

Quvvatni yoqing Q020.


Kimning arizasi 2011 yil boshida sotib olingan 1-kodli barcha mahsulotlarning yig'indisini qamrab oladi:
Daromad_sumi sifatida summani (summa*narx) TANLASH

m_daromaddan QAYERDA product_id=1 VA dt #6/1/2011# VA #6/30/2011# O'rtasida;.

Q021 ga sozlang.


Aqlli ongni ifodalash uchun mantiqiy operatsiyalardan foydalaning AND (bo'g'in), OR (dizyunksiya) va EMAS (mantiqiy ketma-ketlik).
Keyingi SQL so'rovi sotilgan tovarlar miqdorini hisoblab chiqadi, 4 va 6 kodlarini kiriting:

Natija_sumi sifatida summani (summa*narxni) tanlang QAYERDA product_id=4 OR product_id=6;

Quvvatni yoqing Q022.


Aqlli ongni ifodalash uchun mantiqiy operatsiyalardan foydalaning AND (bo'g'in), OR (dizyunksiya) va EMAS (mantiqiy ketma-ketlik).
U 2011 yil 12 iyunda 4 yoki 6 kodlangan tovarlar soniga sotilgan summaga qarab hisoblanadi:

Yig'indi (summa*narx) natija_sumi sifatida tanlang QAYER (mahsulot_id=4 YOKI mahsulot_id=6) VA dt=#6/12/2011#;

Q023 tomonidan quvvatlanadi.


Zavdannya shunday.
"Non mahsulotlari" toifasida sotib olingan tovarlarning umumiy miqdorini hisoblang.
Ushbu vazifani bajarish uchun siz uchta jadvalni ishlatishingiz kerak: m_income, m_product va m_category, shuning uchun:

- sotib olingan tovarlarning miqdori va narxi m_daromadlar jadvalida saqlanadi;


- teri mahsulotining toifa kodi m_product jadvalida saqlanadi;
- Turkum sarlavhasining nomi m_category jadvalida saqlanadi.
Ushbu maqsadga erishish uchun jarayonni tezlashtirish uchun quyidagi algoritm qo'llaniladi:
- qo'shimcha almashtirish uchun m_category jadvalidan "Non mahsulotlari" toifa kodini belgilang;
- teri mahsulotlarining belgilangan toifasi uchun m_income va m_product jadvali yaratilgan;
- toifa kodi eng muhim kichik band tomonidan tayinlangan kodga teng bo'lgan tovarlar uchun olingan summani (= miqdor*narx) hisoblash."); !} !}

TANLASH FROM m_product AS a.id=b.product_id.
WHERE ctgry_id = (Tanlang id FROM m_category WHERE title="Non mahsulotlari
Quvvatni yoqing Q024.
- Qabul qilingan miqdorni hisoblang = miqdor * narx.

FROM (m_mahsulot ICHKI JOIN AS m_daromad AS b ON a.id=b.product_id)

WHERE c.title="Non mikroblari"; !}!}

Quvvatni yoqing Q025. Qaysi holatda qancha tovar sarflanganligi hisoblab chiqiladi:

COUNT(mahsulot_identifikatori) ni product_cnt sifatida tanlang


FROM (Tanlash DISTINCT product_id FROM m_outcome) AS t;

Quvvatni yoqing Q026. GROUP BY bayonoti yozuvlarni guruhlash uchun ishlatiladi.

Yozuvlar bir yoki bir nechta maydonlarning qiymatlari bo'yicha guruhlanganligiga ishonch hosil qiling va teri guruhi bo'lgunga qadar har bir jamlash operatsiyasi to'xtab qolguncha.


Masalan, joriy hisobot mahsulot sotish haqida.
Keyin jadval tuziladi, unda tovarlarning nomlari va ular sotilgan miqdori ko'rsatilgan:
Sarlavha, SUM(summa*narx) natija_summa AS

FROM m_product AS a INNER JOIN m_outcome AS b ON a.id=b.product_id

GROUP BY BY;


Quvvatni yoqing Q027.
Bu toifalar bo'yicha sotish haqida.
Keyin jadval tuziladi, unda tovarlar toifalarining nomlari, sotuvlar miqdori, ushbu toifalarda sotilgan tovarlar miqdori va o'rtacha sotish miqdori ko'rsatilgan.
O'rtacha qiymatni yuzinchi o'ringa yaxlitlash uchun Vikoristanning ROUND funksiyasi (butun va o'q qismlarini ajratgandan keyin yana bir belgi):

c. sarlavha, SO‘M(summa*narx) natija_so‘mi sifatida tanlang, ROUND(AVG(summa*narx),2) natija_summa_oʻrtacha

FROM (m_product AS a.id=b.product_id)


INNER JOIN m_category AS c ON a.ctgry_id=c.id
Kimning arizasi 2011 yil boshida sotib olingan 1-kodli barcha mahsulotlarning yig'indisini qamrab oladi:
c. sarlavha bo'yicha GURUHLASH;
Q028 tomonidan quvvatlanadi.

Mahsulotlar to'g'risidagi ma'lumotlarni ko'rsatish uchun zarur bo'lgan ob'ektlarning o'rtacha soni har bir mahsulot uchun hisoblab chiqiladi, talab qilinadigan elementlarning o'rtacha soni 500 tadan kam emas: mahsulot_identifikatorini tanlang, SUM(summa) AS summa_sum,

Round(Oʻrtacha(summa),2) AS summa_oʻrtacha


mahsulot_identifikatori boʻyicha GURUHLASH
BO'LGAN so'm (summa)> = 500;
Q029 tomonidan quvvatlanadi.
Bunday holda, charm mahsuloti uchun miqdor 2011 yilning boshqa choragida olingan daromadning o'rtacha qiymatidan kelib chiqqan holda hisoblanadi.

Agar mahsulot uchun qaytarish miqdori 1000 dan kam bo'lmasa, ushbu mahsulot haqida ma'lumot ko'rsatiladi: Ba'zi hollarda, bir stolning teri yozuvini boshqa stolning teriga kiritishi bilan kiritish kerak;
nima dekart yaratilishi deb ataladi.

Bunday hisoblash natijasida tuzilgan jadval Dekart jadvali deb ataladi. Masalan, agar A jadvalida 100 ta, jadvalda esa 15 ta yozuv bo'lsa, ularning Dekart jadvali 100*15=150 yozuvdan iborat.


Keyingi yozuv m_income jadvali yozuvini m_outcome jadvali yozuvi bilan birlashtiradi:

m_daromaddan, m_natijadan; Q031 tomonidan quvvatlanadi.

Ikki maydonli yozuvlarni guruhlash misoli.




Keyingi SQL so'rovi har bir pochta xaridori oladigan tovarlar miqdori va sonini hisoblab chiqadi:

SUM(summa*narx) daromad_sumi AS Quvvatni yoqing Q032. Ikki maydonli yozuvlarni guruhlash misoli. Quyidagi savol terini oluvchi uchun biz tomonidan sotilgan mahsulotlar sonini hisoblab chiqadi:

U qayta zaryadlanadi - to'ldirishning o'rtasida to'ldirishdan boshqa hech narsa yo'q.
yetkazib beruvchi_identifikatori, mahsulot_identifikatori, SUM(summa) AS summa_sum,



Keyingi yozuv m_income jadvali yozuvini m_outcome jadvali yozuvi bilan birlashtiradi:

yetkazib beruvchi_identifikatori, mahsulot_identifikatori boʻyicha GROUP;
Q033 tomonidan quvvatlanadi.
Kimning ilovasida vikorstanni qanday quvvatlantirishni yozish uchun ikkita ko'rsatmalar mavjud (q031 va q032).
Ushbu LEFT JOIN so'rovlarining natijalari bitta signalga birlashtiriladi.
Keyingi qadam teri uchun sotilgan mahsulotlarning miqdori va miqdori haqidagi ma'lumotlarni ko'rsatishdir.
Shuni esda tutingki, agar biron bir mahsulot allaqachon talabga ega bo'lsa-da, lekin hali sotilmagan bo'lsa, unda natija_sum hisobi bo'sh bo'ladi.
, javob nima?

Hosildorlik Men buni so'rayman

U qayta zaryadlanadi - to'ldirishning o'rtasida to'ldirishdan boshqa hech narsa yo'q.
yetkazib beruvchi_identifikatori, mahsulot_identifikatori, SUM(summa) AS summa_sum,


Kimning ilovasida vikorstanni qanday quvvatlantirishni yozish uchun ikkita ko'rsatmalar mavjud (q031 va q032).
Keyingi yozuv m_income jadvali yozuvini m_outcome jadvali yozuvi bilan birlashtiradi:
FROM m_income ICHKI JOIN AS m_product AS b ON a.product_id=b.id
yetkazib beruvchi_identifikatori, mahsulot_identifikatori boʻyicha GURUHLASH a
TO'G'RI QO'SHILING
Kimning ilovasida vikorstanni qanday quvvatlantirishni yozish uchun ikkita ko'rsatmalar mavjud (q031 va q032).
Ushbu LEFT JOIN so'rovlarining natijalari bitta signalga birlashtiriladi.
FROM m_outcome ICHKI JOIN AS m_product AS b ON a.product_id=b.id
yetkazib beruvchi_identifikatori, mahsulot_identifikatori boʻyicha GURUHLASH b
ON (a.ta'minotchi_id=b.ta'minotchi_id) VA (a.mahsulot_id=b.mahsulot_id);

Quvvatni yoqing Q035. Bu oziq-ovqat mahsulotlari uchun daromad va xarajatlar miqdori haqida paydo bo'ladi.

Buning uchun m_daromad va m_natija jadvallari uchun mahsulotlar ro'yxati tuziladi, so'ngra ushbu ro'yxatdagi har bir mahsulot uchun m_daromad jadvali uchun daromad miqdori va m_natija jadvali bo'yicha xarajatlar miqdori hisoblab chiqiladi:


mahsulot_identifikatorini, daromad_summasi AS SUM(summa)ni tanlang,
SUM(tashqi_summa) natija_summasi AS
FROM
Kimning arizasi 2011 yil boshida sotib olingan 1-kodli barcha mahsulotlarning yig'indisini qamrab oladi:
(mahsulot_identifikatorini tanlang, AS miqdorida, 0 AS tashqarida
HAMMA ittifoq
SELECT product_id, 0 AS in_summa, summa AS out_summa
FROM m_outcome) AS t

GROUP BY BY product_id; Q036 tomonidan quvvatlanadi.

m_daromaddan;


EXISTS funksiyasi elementlarga uzatiladigan TRUE qiymatlarni aylantiradi.
EXISTS funktsiyasi elementlarni noto'g'ri joylashtirmaslik uchun bo'sh omil kiritilsa, FALSE qiymatini aylantiradi.

Keyingi qadam sizdan m_income jadvalida va m_outcome jadvalida joylashgan mahsulot kodlarini ko'rsatishingizni so'raydi: FROM m_income AS a

m_daromaddan;


EXISTS funksiyasi elementlarga uzatiladigan TRUE qiymatlarni aylantiradi.
QAYERDA MAVJUD (mahsulot_identifikatorini m_natijadan TANGLASH AS b

Q037 tomonidan quvvatlanadi. m_income jadvalida va m_outcome jadvalida joylashgan mahsulot kodlari ko'rsatiladi:

m_daromaddan;


EXISTS funksiyasi elementlarga uzatiladigan TRUE qiymatlarni aylantiradi.
WHERE product_id IN (m_natijadan mahsulot_identifikatorini tanlang)
Q038 tomonidan quvvatlanadi.

m_income jadvalida joylashgan tovarlar kodlari ko'rsatiladi, lekin m_outcome jadvalida emas: MAVJUD YO'Q QERDA(mahsulot_identifikatorini m_natijadan AS b

WHERE b.mahsulot_id=a.mahsulot_id);


Aqlli ongni ifodalash uchun mantiqiy operatsiyalardan foydalaning AND (bo'g'in), OR (dizyunksiya) va EMAS (mantiqiy ketma-ketlik).
c. sarlavha bo'yicha GURUHLASH;
Q039 tomonidan quvvatlanadi.
Savdo miqdori maksimal bo'lgan mahsulotlar ro'yxati ko'rsatiladi.

Algoritm shunday. Har bir mahsulot uchun sotish miqdori hisoblab chiqiladi. Keyin maksimal miqdor hisoblab chiqiladi. Keyin, har bir mahsulot uchun uning sotilgan miqdori yana hisoblab chiqiladi va sotish miqdori maksimal bo'lgan tovarlarni sotish miqdori uchun kod ko'rsatiladi: mahsulot_identifikatori, SUM(summa*narx) summa_sum AS ni tanlang SUM (summa*narx) = (MAKS (s_summa) ni tanlang)

FROM (mahsulot_identifikatori bo'yicha m_natija GURUHIDAN s_summa sifatida SUM(summa*narx) ni tanlang));


Quvvatni yoqing Q040.

Zaxiralangan so'z IIF ( IIF operatori ko'p marta ishlatilganligi sababli uni SWITCH operatori bilan almashtirgan ma'qul.

FROM (mahsulot_identifikatori bo'yicha m_natija GURUHIDAN s_summa sifatida SUM(summa*narx) ni tanlang));


SWITCH operatori (bir nechta tanlash operatori) mantiqiy ifoda va mantiqiy ifodani va natijaga qarab boshqa harakatlarni baholash uchun ishlatiladi.
TANLASH: 1-10

Keyingi bosqichda lot “kichik” hisoblanadi, agar lotdagi tovarlar soni 500 dan kam bo‘lsa. Aks holda, agar tovar soni 500 dan ortiq yoki qimmatroq bo‘lsa, lot “ajoyib” hisoblanadi: SWITCH(miqdori =500, "katta") AS belgisi
Quvvatni yoqing Q042.

Hozirgi vaqtda, agar partiyadagi tovarlar miqdori 300 dan kam bo'lsa, u holda partiya "kichik" hisoblanadi. SWITCH(miqdori =500, "katta") AS belgisi
Aks holda, summa sifatida SELECT dt, product_id, summa,
IIF(summa IIF(m_daromaddan olingan summa);

SQL Q043 yozadi. SWITCH(summa miqdori>=1000, "yuqori") AS belgisi

m_daromaddan;


SQL Q044 so'radi.
Savdolar uchta guruhga bo'linadi: kichik (150 tagacha), o'rta (150 dan 300 gacha), katta (300 va undan ortiq).
Keyinchalik, teri guruhi sumka sifatida hisoblanadi:

Kategoriyani tanlang, SUM(natija_sum) AS Ctgry_Total FROM (Tanlash summasi*narx AS natijasi_sum,
IIf(summa*narx IIf(summa*narx m_natijadan) AS t
Turkum bo‘yicha GURUHLASH;

SQL Q045 so'radi.


TANLASH: 1-10

DateAdd funktsiyasi ushbu sanadan oldin kunlar, oylar yoki kunlarni qo'shish va yangi sana qo'shish uchun ishlatiladi. Haqoratli eslatma:

1) dt maydonidagi sanaga 30 kun qo'shing va dt_plus_30d maydonida yangi sanani ko'rsating;


2) dt maydonidagi sanaga 1 oy qo'shing va dt_plus_1m maydonida yangi sanani ko'rsating:
SELECT dt, dateadd("d",30,dt) AS dt_plus_30d, dateadd("m",1,dt) AS dt_plus_1m
TANLASH: 1-10

SQL Q046 so'radi. DateDiff funksiyasi turli birliklarda (kunlar, oylar yoki yillar) ikki sana o'rtasidagi farqni hisoblash uchun mo'ljallangan. Keyingi yozuv dt maydonidagi sana bilan kunlar, oylar va kunlardagi joriy sana o'rtasidagi farqni hisoblab chiqadi: SELECT dt, DateDiff("d",dt,Date()) AS oxirgi_kun,


DateDiff("m",dt,Date()) AS oxirgi_oylar,
DateDiff("yyyy",dt,Sana()) AS oxirgi_yillar
SQL Q047 so'radi.

Kunlar soni tovar olingan kundan boshlab hisoblanadi (m_daromad jadvali). joriy sana

Qo'shimcha DateDiff funksiyasidan keyin qo'shilish atamasi (m_product jadvali) keladi:


DateDiff("d",dt,Sana()) AS oxirgi_kunlar
FROM m_income AS a INNER JOIN AS m_product AS b
SQL Q047 so'radi.

ON a.product_id=b.id; Tovar qabul qilingan kundan boshlab etkazib berish sanasigacha bo'lgan oylar soni hisoblanadi.

month_last1 ustuni oylarning mutlaq sonini, month_so'nggi2 ustuni qo'shimcha oylar sonini hisoblab chiqadi:


dt, DateDiff("m",dt,Sana()) AS month_so'nggi1,
TANLASH: 1-10

DateDiff("m",dt,Sana())-iif(kun(dt)>kun(sana()),1,0) AS month_oxirgi2 SQL Q050 tomonidan quvvatlanadi.

2011 yil uchun sotib olingan tovarlar miqdori va miqdori to'g'risida har chorakda hisobot ko'rsatiladi:


SELECT kvartal, SUM(natija_sum) AS Jami
FROM (Tanlash summasi*narx AS natija_sumi, oy(dt) AS m,
SWITCH(m =10,4) AS kvartal
FROM m_income WHERE year(dt)=2011) AS t

Chorak bo'yicha GURUHLASH; Quvvatni yoqing Q051.

Keyingi ko'rsatma sizga savdogarlar tizimga tovarlarni olgan summadan ko'proq summani chegirib tashlash to'g'risida ma'lumot kirita olganligini tushunishga yordam beradi:


mahsulot_identifikatori, SUM(so'm ichida) daromadlar_sumi AS, SUM(tashqi_sum) natija_sumi AS
FROM (mahsulot_identifikatorini tanlang, summa*narx yig'indisi, 0 - chiquvchi_sum
(mahsulot_identifikatorini tanlang, AS miqdorida, 0 AS tashqarida
m_income kiriting
Mahsulot_identifikatorini tanlang, yig'indi sifatida 0, yig'indisi sifatida summa*narx
c. sarlavha bo'yicha GURUHLASH;
dan m_outcome) AS t
SUM (so'm ichida) Quvvatni yoqing Q052.

Aylanadigan qatorlarni raqamlash turli usullar bilan amalga oshiriladi.


Masalan, MS Access-da tayyorlangan kitobning satrlarini MS Access-ning o'zi usullaridan foydalanib qayta nomerlash mumkin.

Siz qo'shimcha dasturlash, masalan, VBA yoki PHP yordamida qayta raqamlashingiz mumkin. Biroq, ba'zida SQL bayonotining o'zi bilan ishlash kerak bo'ladi.

Endi keyingi so'rov m_income jadvalining qatorlarini ID maydonining qiymatini oshirish tartibida raqamlaydi:


Aqlli ongni ifodalash uchun mantiqiy operatsiyalardan foydalaning AND (bo'g'in), OR (dizyunksiya) va EMAS (mantiqiy ketma-ketlik).
c. sarlavha bo'yicha GURUHLASH;
N, b.id, b.mahsulot_id, b.summa, b.narx sifatida COUNT(*) ni tanlang

FROM m_income a INNER JOIN m_income b ON a.id GROUP BY b.id, b.product_id, b.summa, b.price; Q053 tomonidan quvvatlanadi.

Mahsulotlar orasida eng yaxshi beshta yetakchilar umumiy sotuvlar asosida ko'rsatilgan.


SUM(tashqi_summa) natija_summasi AS


Birinchi beshta yozuvni ko'rsatish uchun qo'shimcha TOP yo'riqnomasi talab qilinadi:
TOP 5, mahsulot_identifikatori, summa(summa*narx) yig‘indisi sifatida tanlab oling
SO'M (summa*narx) BO'YICHA BUYURTMA;
Quvvatni yoqing Q054.
Mahsulotlar orasida eng yaxshi beshta yetakchi sotuvlar miqdori bo'yicha ko'rsatiladi va natijada qatorlar raqamlanadi:
COUNT(*) NI N, b.mahsulot_id, b.summa sifatida tanlang
FROM m_outcome GROUP BY product_id) AS a
ICHKI QO‘SHILMA

(mahsulot_identifikatorini tanlang, summa(summa*narx) AS summasi, summa*10000000+mahsulot_identifikatori AS identifikatori

FROM m_outcome GROUP BY BY product_id) AS b


ON a.id>=b.id
SQR(x) SQRT_ sifatida, x^3 "x^3", ABS(x) ABS_ sifatida
FROM (COUNT(*) TANI K AS
FROM m_income AS ICHKI JOIN m_income AS b ON a.idGROUP BY b.id) t;

SQL yozing.

MS Access-dan foydalaning. YANGILANISH: 1-10

U001 ga sozlang.


O'zgartirish uchun keyingi SQL so'rovi m_income jadvalidagi 3 kodli tovarlar narxini 10% ga oshiradi:

YANGILANISh m_daromad SET narxi = narx*1.1 WHERE product_id=3;

U002 ga sozlang.


m_income jadvalini yangilash uchun navbatdagi SQL so'rovi 22 birlikka ko'payib, nomlari "Oliya" so'zlari bilan boshlanadigan barcha mahsulotlar soniga ko'paydi:

YANGILASH m_daromad SET miqdori = summa+22 WHERE product_id IN (m_product FROM identifikatorni tanlang QAYERDA "Oliya*" kabi sarlavha);

U003 ga sozlang.


m_outcome jadvalini o'zgartirish uchun keyingi SQL so'rovi "Solodke" MChJ ro'yxatiga kiritilgan barcha tovarlar narxini 2 yuzga kamaytiradi:
YANGILASH m_outcome SET narxi = narx*0,98
QAYERDA mahsulot_identifikatori"Сладкое"");. !}!}

(m_product a INNER JOIN m_supplier dan a.id ni tanlang b

ON a.supplier_id=b.id WHERE b.title="TOV) Dars davomida so'rovlar tilini ko'rib chiqamiz: SELECT sql operatori - ma'lumotlarni tanlash uchun

SQL so'rovini tanlash

ma'lumotlar bazasidan dastlabki tanlash maqsadlari.

Tobto.

Agar biz ma'lumotlarni u bilan hech qanday ishlov bermasdan va ma'lumotlar bazasiga o'zgartirish kiritmasdan o'chirib tashlashimiz kerak bo'lsa, unda biz bu tanni xavfsiz tarzda vikorizatsiya qilishimiz mumkin. SELECT bayonoti sintaksisi SELECT * FROM table_name;

Bu ma'lumotlar bazasi jadvalidagi barcha yozuvlarni tanlaganimizda operator bilan ishlashning eng oddiy variantidir.

Belgisi * degan ma'noni anglatadi jadvaldagi barcha yozuvlarni tanlash
.

Bunday holda, hosil bo'lgan to'plamning qatorlari tartibga solinmaydi.

Keling, SQL tanlash so'rovlarini qo'llashni ko'rib chiqaylik:
Butt:

Mahalliy ma'lumotlar bazasini yaratganingizdan va yuqorida tavsiflanganidek jadvallarni to'ldirganingizdan so'ng (yoki siz unga sqlFiddle xizmati yordamida kirgan bo'lsangiz), keyingi bosqichga o'tdingiz. O'qituvchilar jadvalidan barcha yozuvlarni tanlash kerak SELECT * FROM table_name LIMIT 2,3;

Ilova 2 ta yozuvdan boshlab 3 ta jadval yozuvini tanlaydi.

Bu, ayniqsa, navigatsiya sahifalari blokini yaratish uchun zarur bo'ladi.


Belgisi * degan ma'noni anglatadi Shchob natijalar to'plamining maydonlarini tartibga soling, ularning izlari SELECT so‘zidan keyin kerakli tartibda tartiblanadi:

TANLASH nomi, zarplata, premia FROM o'qituvchilardan BUYURTDI ism bo'yicha;

Maydon nomi, ish haqi, mukofot qiymatini tanlang va maydon nomi bo'yicha tartiblang (alifbo bo'yicha)

JB "

Kompyuter do'koni

Maydonlar nomi, zarplata, premia qiymatlarini tanlang va tomchilardan keyin maydon nomi bo'yicha tartiblang


SQL-da takrorlanadigan qiymatlar qanday?

Noyob qatorlarni olib tashlash kerak bo'lganda, siz foydalanishingiz mumkin kalit so'z AYRIQ.

AYRIQ(inglizcha tarjimadan) - bu dalil ikkinchi darajali ma’nolarni tushunadi:

"Institut" ma'lumotlar bazasi: aniqlash kerak Mumkin variantlar bonuslar miqdori.

    Distinct dan foydalanmasangiz, natija ikki xil ma'noga ega bo'ladi.

    Maydon nomi, ish haqi, mukofot qiymatini tanlang va maydon nomi bo'yicha tartiblang (alifbo bo'yicha)

    Distinct ni kiritish orqali takrorlanadigan sql qiymatlarini o'chirishingiz mumkin - natijada takroriy qiymatlar takrorlanmaydi.

    KOMPYUTERDAN tezlikni, xotirani tanlash;

    Kompyuter jadvalida asosiy kalit sifatida kod maydoni mavjud.

    Kompyuter jadvalida asosiy kalit sifatida kod maydoni mavjud.

    Maydon nomi, ish haqi, mukofot qiymatini tanlang va maydon nomi bo'yicha tartiblang (alifbo bo'yicha)

    Ushbu maydon yozuvda yo'qligi sababli, natijada olingan natijalar to'plamida takroriy qatorlar mavjud. Agar siz noyob qatorlarni olib tashlashingiz kerak bo'lsa (masalan, biz barcha mavjud kompyuterlarning xususiyatlariga emas, balki protsessor tezligi va xotirasining turli kombinatsiyalariga e'tibor qaratamiz), Distinct-dan foydalanishingiz kerak:

    KOMPYUTERDAN DISTINCT Tezlik, xotirani TANLASH;

    Menejer SQL 1_1 ni tanlang.
    "Institut" ma'lumotlar bazasi
    O'quvchi jadvalidan identifikator va nomni tanlash uchun bosing.

    O'quvchilaringizning taxalluslarini ismlaridan ajratib oling

    "Institut" ma'lumotlar bazasi: Til sql: bu erda umova Aql taklif bilan tugaydi

    QAYERDA

    FROM bandidan keyin yoziladi.

  1. Bunday holda, olingan to'plam faqat predikatning qiymati TRUE ga teng bo'lgan yozuvlarni o'z ichiga oladi.
  2. Jadval o'qituvchilaridan ma'lumotlarni kiriting, taxallus
  3. "Institut" ma'lumotlar bazasi: Ivanov 10000 SQL juda ko'p miyaga ega 500

    Predikatlar (so'zlar) bitta ifodadan yoki mantiqiy operatorlar yordamida tuzilgan har qanday iboralar birikmasidan tuzilishi mumkin:
    VA
    yoki yo'qmi
    Wikladach kodini kiriting, uning ish haqi
    , va bonus

    Aqldagi aloqa operatorlari:

    = Rivniy

    > Batafsil

    <Проверяемое выражение>>= Birdan ortiq<Начальное выражение>Taqqoslamaydi<Конечное выражение>

    SQLda (mij) BETWEEN predikati AND xizmat so'zi bilan birlashtirilgan qo'shni iboralar tomonidan belgilangan diapazonda tasdiqlangan ifoda qiymatlarini tekshiradi.

    SQLda (mij) Sintaksis:

    ORASIDA

    VA

    > Batafsil

    < Проверяемое выражение>"Institut" ma'lumotlar bazasi:< набор значений> )

    <Проверяемое выражение>Depozit orqali taxallus va maoshingizni kiriting, maosh 5000 dan 10000 gacha.<набор значений>)

    SQLda (mij) Omonatga taxallus va ish haqini kiriting, uning ish haqi 5000 dan 10000 gacha emas.

    SQLda (mij) Predikat IN

    Menejer SQL 1_3 ni tanlang."Institut" ma'lumotlar bazasi

O'quvchilarning unvoni, ish haqi va bonuslarini, 2000 dan 5000 rublgacha bo'lgan har qanday turdagi bonuslarni kiriting. Bu bag'ishlanish bo'yicha saboqdir SQL so'rovlari ma'lumotlar bazasiga VBA kirish . Keling, VBA-da ma'lumotlar bazasiga INSERT, UPDATE, DELETE ni qanday yozishni, shuningdek, qanday o'chirishni ko'rib chiqaylik.

o'ziga xos ma'no ma'lumotlar bazasiga SELECT savolidan. Dasturchilar bu baza bilan ishlaydi

SQL ma'lumotlari

Serverlar ko'pincha SQL-dan ma'lumotlar bazasiga kirishni so'rash, INSERT, UPDATE yoki oddiy SQL-dan SELECTni so'rash kabi oddiy va zarur vazifalar bilan kurashadilar. Va bu ish uchun biz ham mas'ulmiz, shuning uchun bugun biz o'zimiz shug'ullanamiz.

Biz allaqachon SQL serverlaridan ma'lumotlarni olish bilan shug'ullanganmiz, bu erda biz ushbu ma'lumotlarni olish uchun VBA-da kod yozganmiz, masalan, MSSql 2008-dagi matn faylidan ma'lumotlarning Vivantage haqidagi maqolasida yoki biz ham biroz harakat qildik. Word va Excel shablonlarida Access-dan olingan ma'lumotlarning Vivantage materiallari.

Ammo aks holda biz buni yuqoridan ko'rib chiqdik, lekin bugun biz ko'plab hisobotlar haqida gaplashamiz. Eslatma!)

Quyidagi barcha ilovalar ADP loyihasi Access 2003 va MSSql 2008 ma'lumotlar bazasida ko'rib chiqiladi. Agar siz ADP loyihasi nima ekanligini bilmasangiz, biz ADP Access loyihasini qanday yaratish va sozlash bo'yicha materialni ko'rib chiqdik.

Ilovalar uchun ma'lumotlarni chop etish Aytaylik, bizda test_table jadvali mavjud bo'lib, unda daryo bo'yidagi tegishli raqamlar va oylarning nomlari mavjud (Wikoristanny'dan Wikonian tilida yozing). Menejment studiyasi JADVAL YARATISH .( NULL EMAS, (50) NULL) ON GO».

Yuqorida aytib o'tganimdek, biz ADP loyihasini tahrirlaymiz, MS SQL 2008 bilan ishlashni o'rnatamiz, unda men test shaklini yaratdim va imzo bilan boshlash tugmachasini qo'shdim.

"Vikonati" , bu bizning kodimizni sinab ko'rish uchun kerak, ya'ni.)/

Barcha kodlar broshyurada " ostida yozilgan.

Tugmalarni bosish VBA-da INSERT, UPDATE, DELETE asoslarini kiriting Boshlash uchun ko'p vaqt talab qilmaslik uchun, deylik, test jadvalimizga qator qo'shishimiz kerak (

kod sharhlandi

Private Sub start_Click() "Dim sql_query qatorini String sifatida saqlash uchun soʻrovni oʻzgartiramiz "Biz unga kerakli soʻrovni yozamiz sql_query = "INSERT INTO test_table (id, name_mon) VALUES ("6", "Qizil") " "Biz RunSQL sql_query End Sub-ni saqlaymiz

Private Sub start_Click() "Biz so'rovni Dim sql_query qatorini String sifatida saqlash uchun o'zgartirishimiz mumkin "So'rovni masofaviy qatorga yozamiz sql_query = "DELETE test_table WHERE id = 6" "Biz bu DoCmd.RunSQL sql_query End Subni saqlashimiz mumkin.

Biz buni tekshirganimizdan so'ng, biz vyishovning kerakli qatori borligini ko'ramiz.

Ma'lumotlarni yangilash uchun biz sql_query o'zgaruvchisiga yozamiz, yangilashni so'raymiz, men ishonaman, aqlli.

VBA da bazaga SELECT ni yozing

Bu yerda siz boshqa SQL konstruktsiyalari haqida bir oz ko'proq ma'lumot olishingiz mumkin.

Birinchidan, aytaylik, biz jadvaldan barcha ma'lumotlarni olishimiz kerak va, masalan, biz uni qayta ishlaymiz va bildirishnomada ko'rsatamiz va siz, albatta, biz yozayotgan boshqa maqsadlarda foydalanishingiz mumkin. bunday kod

Private Sub start_Click() "Mutlaqo o'zgaruvchan" Dim RS ma'lumotlar bazasidan yozuvlar to'plami uchun ADODB.Recordset sifatida "Qator kiritilgan Dim sql_query String sifatida "Tegishli bittadan pastki ma'lumotlarni ko'rsatish uchun qator Dim str String sifatida "Yangisini yaratish yozuv uchun ob'ekt ív o'rnatilgan RS = Yangi ADODB .Recordset "Buyurtma yoziladi sql_query = "Tanlash identifikatori, test_jadvalidan nom_mon" "Joriy ulanishlardan RS.open sql_query loyihasiga yozish mumkin, CurrentProject.Connection, adOpenDynamic, adLockOptimistic "Yozuv boʻylab aylanish Wh.

bildirishnomani ko'rsatish uchun str = str & RS.Fields("id") & "-" & RS.Fields("name_mon") & vbnewline "joriy yozuvga o'ting RS.MoveNext Wend "Bildirishnomani ko'rsatish msgbox str End Sub

Bu erda biz yozuvlar to'plamimizdagi barcha qiymatlarni takrorlash uchun VBA Access tsikllaridan foydalanamiz.

Biroq, ko'pincha yozuvlar to'plamidan barcha qiymatlarni emas, balki faqat bittasini, masalan, uning kodi ortidagi oyning nomini tanlash kerak.

Va kimga sikl yozish qimmat bo'lsa, biz shunchaki bir xil qiymatga ega bo'lgan va keyingisiga qadar davom etadigan ketma-ketlikni yozishimiz mumkin, masalan, 5 kodidan keyin oy nomini olib tashlashimiz mumkin. Private Sub start_Click() "Mutlaqo o'zgarishlar" Ma'lumotlar bazasidan yozuvlar to'plami uchun Dim RS As ADODB.Recordset "Qator kiritildi Dim sql_query String sifatida "Ichki yig'indi qiymatini ko'rsatish uchun qator Dim str As String "uchun yangi ob'ekt yaratish. yozuvlar to'plami RS = Yangi A DODB .Recordset "Buyurtma sql_query ga yoziladi = "Tanlash name_mon FROM test_table WHERE id = 5" "U RS.open sql_query, CurrentProject.Connection, adOpenDynamic loyihasiga aniq ulanishlarga yoziladi. , adLockOptimistic "Qiymatimiz o'chiriladi nya str = RS. End Sub "Traven".

Bilasizmi, hamma narsani tugatish oson. Ko'pincha asosdan ma'lum bir qiymat olishingiz kerak bo'lganidek ( dumbaning qolgan qismi kabi ), keyin men barcha kodni bitta kirish parametri bilan funktsiyaga (VBA Access 2003 da funktsiyani qanday yozish kerak) qo'yishni tavsiya qilaman, masalan, oy kodi ( Keling, dumbamizni ko'rib chiqaylik

) Va shunchaki qiymatni ko'rsatish kerak, kerakli parametr bilan bizga kerak bo'lgan funktsiyani bosing va bu hammasi, ya'ni VBA kodini o'zgartirishimiz va dasturimizdan foydalanishni osonlashtirishimiz mumkin.

Bugun uchun hammasi shu.

Omad tilaymiz!Laboratoriya roboti №1SQL

: VISTAN DANIH - jamoa

  • TANLASH
  • Meta robotlar:

SQL iboralari bilan tanishish;

Access-da oddiy SQL-ni yaratish va qo'shimcha SELECT buyruqlaridan foydalanishni o'rganish;№1. · O‘zgaruvchi operatorlari IN, BETWEEN, LIKE, IS NULL.

Zavdannya

SQL rejimida STUDENTS jadvalidagi NAME va NAME maydonlarining barcha qiymatlarini tanlash uchun so‘rov yarating.

Access-da oddiy SQL-ni yaratish va qo'shimcha SELECT buyruqlaridan foydalanishni o'rganish;№2 IM'YA ni tanlang, taxallus

Talabalardan;

SQL rejimida STUDENTS jadvalidagi NAME va NAME maydonlarining barcha qiymatlarini tanlash uchun so‘rov yarating.


. SQL rejimida Talabalar jadvalining barcha ustunlarini tanlash uchun so'rov yarating.

TANLASH *

Zavdannya № 3.

SQL rejimida talabalar yashaydigan joy nomini tanlash uchun so'rov yarating, bu haqdagi ma'lumotlar TEXNIKSIYALAR MA'LUMOTlari jadvalida. ALOQA JOYINNI TANLASH

[MA'LUMOT XUSUSIYATLARI]DAN;

Zavdannya № 4.

SQL rejimida Ivanov taxallusli barcha talabalarning ismlarini tanlaydigan tanlov so'rovini yarating, ular haqidagi ma'lumotlar TALABLAR jadvalida joylashgan.

ISMI, IMNI TANLASH Talabalardan

[MA'LUMOT XUSUSIYATLARI]DAN;

Zavdannya № 4.

WHERE NAME = "Ivaniv";

Zavdannya № 5.

Talabalardan;

UIT-22 guruhi byudjet shaklidan boshlanadigan talabalarning ismlari va taxalluslarini olib tashlash uchun SQL rejimida tanlov so'rovini yarating.WHERE GROUP="UIT-22" VA BUDJET=to'g'ri;Zavdannya № 6]

.SQL rejimida so'rov yarating.jadvaldan 4 yoki 5 balldan yuqori bo'lgan talabalar to'g'risidagi ma'lumotlarni BERILGAN IMTIHON tanlash.

dan [ RESHTA

Talabalardan;

UIT-22 guruhi byudjet shaklidan boshlanadigan talabalarning ismlari va taxalluslarini olib tashlash uchun SQL rejimida tanlov so'rovini yarating.WHERE GROUP="UIT-22" VA BUDJET=to'g'ri;Zavdannya № 6]

.imtihon=" QAYERDABAHOLASHSQL rejimida so'rov yarating.IN(4,5);

Zavdannya № 7. 3-IOSU fanidan imtihon bahosini olishi mumkin bo'lgan talabalar haqidagi yozuvlarni tanlash uchun o'chirilgan SQL rejimini yarating.

Talabalardan;

yetkazib beruvchi_identifikatori, mahsulot_identifikatori, SUM(summa) AS summa_sum,BUYUM

.IOSUVa


In emas (4,5); Zavdannya № 8.

Talabalardan;

yetkazib beruvchi_identifikatori, mahsulot_identifikatori, SUM(summa) AS summa_sum,100 dan 130 gacha bo'lgan elementlar haqida yozuvlarni tanlash uchun SQL rejimida so'rov yarating.

.OB'YEKTLARYUBILAYI100 dan 130 gacha;*";

Zavdannya № 9. Talabalar jadvalidan taxalluslari, masalan, “C” harfi bilan boshlangan talabalar haqidagi ma’lumotlarni tanlash uchun SQL rejimida so‘rov yarating. Talabalar QO'NG'IROQ

AMD yo'q ...