Girişdə sql-dən istifadə. SQL sorğu dili. Məlumatların dəyişdirilməsi üçün əsas SQL əmrləri

Əvvəlki məqalələrdə məsələlər müzakirə olunub. SQL sorğuları əsasında “sql_training_st.mdb” verilənlər bazası cədvəllərinin strukturunun yaradılması texnologiyası nəzərdən keçirilir. Bundan əlavə, SQL sorğularından istifadə edərək ACCESS DBMS cədvəlləri "sql_training_st.mdb" dolduruldu.

Məlumdur ki, relyasiyalı verilənlər bazalarında SQL dili verilənlərin manipulyasiyası, verilənlər bazası və onun komponentlərinin strukturunu müəyyən etmək, verilənlər bazasına istifadəçi girişinə nəzarət etmək, əməliyyatları idarə etmək və ya verilənlər bazasında dəyişiklikləri idarə etmək üçün nəzərdə tutulmuşdur.

SQL dili dörd qrupdan ibarətdir:

  • məlumatların manipulyasiya dili DML;
  • DDL Data Definition Language;
  • məlumatların idarə edilməsi dili DCL;
  • TCL əməliyyat nəzarət dili.

DML qrupuna dörd əsas növ daxildir SQL sorğuları:

  • INSERT - cədvəlin sonuna bir və ya bir neçə qeyd əlavə etmək üçün nəzərdə tutulmuşdur;
  • YENİLƏNİB - artıq dəyişmək nəzərdə tutulub mövcud qeydlər cədvəl sütunlarında və ya cədvəldəki məlumatların dəyişdirilməsi;
  • DELETE - cədvəldən qeydləri silmək üçün nəzərdə tutulmuşdur;
  • SELECT - cədvəllərdən verilənləri seçmək üçün nəzərdə tutulmuşdur.

Verilənlər bazasına düzəldici sorğulara aid olan SQL sorğularının ilk üç növü (INSERT, UPDATE, DELETE) səhifədə müzakirə edilmişdir.

Bu yazıda biz Access verilənlər bazası cədvəllərindən məlumatların alınması üçün sorğulara baxacağıq.

Access 2003 və ya 2007 verilənlər bazasında saxlanılan məlumatları əldə etmək üçün cədvəllərdən məlumatları seçmək üçün SELECT sorğusundan istifadə edə bilərsiniz.

Nümunə götürmək üçün aşağıdakı SQL sorğusunu (SQL ifadəsini) tərtib edək, bunun üçün View/SQL Mode əmrini yerinə yetirərək SQL rejimini seçin. Klaviaturadan aşağıdakı SQL ifadəsini daxil edin:

SEÇİN *
Tələbələrdən;

Bu bəyanat iki bənddən ibarətdir "SEÇ *" və "Tələbələrdən". Birinci bənddə SELECT ifadəsi və identifikator * var ("identifikator *" cədvəlin bütün sütunlarının siyahısı deməkdir). İkinci bənddə FROM ifadəsi və "Tələbələr" identifikatoru var.

FROM - SELECT bəndində göstərilən sahələri ehtiva edən Tələbələr cədvəlini müəyyən edir. Qeyd etmək lazımdır ki, seçim sorğusu həmişə iki ifadədən ibarətdir: SELECT və FROM. Seçim şərtlərindən asılı olaraq, seçim sorğusunda digər operatorlar da ola bilər. Şəkil 1 məlumatların əldə edilməsi üçün sorğunun ekran görüntüsünü göstərir.


düyü. 1. Məlumat seçmək üçün SQL SELECT sorğusu

Bu nümunədə Tələbələr cədvəlinin bütün sütunlarından məlumat nümunəsi yaradılır.

Sorğunu "Students-query1" adı ilə yadda saxlayın. “Saxla” əmrinin icrası nəticəsində “Naviqasiya sahəsi”ndə “Requests: Students-request1” obyekti görünəcək.

Seçim sorğusunu yadda saxladıqdan sonra “Çalış” işarəsinə klikləməklə bu sorğunu yerinə yetirməlisiniz. "Çalış" əmrinin nəticələri Şəkildə göstərilmişdir. 2.



düyü. 2. Tələbələr cədvəlinin bütün sütunlarından verilənlərin seçilməsi

SQL dili tamhüquqlu inkişaf dilinin funksiyalarına malik deyil, lakin verilənlərin əldə edilməsinə yönəldilmişdir, ona görə də o, proqram inkişaf alətlərinə daxil edilmişdir. Bu vəziyyətdə adlanır quraşdırılmış SQL. SQL dili standartı aşağıdakı proqramlaşdırma dillərinin müasir tətbiqləri ilə dəstəklənir: PL/1, Ada, C, COBOL, Fortran, MUMPS və Paskal.

Müştəri-server tipli ixtisaslaşdırılmış proqram inkişaf sistemlərində proqramlaşdırma mühiti, əlavə olaraq, adətən kommunikasiya vasitələri ilə (verilənlər bazası serverləri ilə əlaqələrin qurulması və kəsilməsi, şəbəkədə baş verən xətaların aşkarlanması və işlənməsi və s.), inkişaf vasitələri ilə tamamlanır. istifadəçi interfeysləri, dizayn və sazlama vasitələri.

Daxili SQL-dən istifadə etmək üçün iki əsas üsul var: statik və dinamik.

At statik dil istifadəsi (statik SQL) Proqram mətnində kompilyasiyadan sonra icra olunan modula sərt şəkildə daxil edilən SQL dili funksiyalarına çağırışlar var. Çağırılan funksiyalardakı dəyişikliklər proqramlaşdırma dili dəyişənlərindən istifadə edərək fərdi çağırış parametrləri səviyyəsində ola bilər.

At dinamik dil istifadəsi (dinamik SQL) güman edilir ki, SQL funksiyalarına edilən zənglər dinamik şəkildə qurulur və bu çağırışların şərhi, məsələn, proqramın icrası zamanı uzaq verilənlər bazasından verilənlərə daxil olmaq. Dinamik üsul adətən proqramın SQL çağırışının növünü əvvəlcədən bilmədiyi və istifadəçi ilə dialoqda qurulduğu hallarda istifadə olunur.

SQL dilinin (həmçinin verilənlər bazası ilə işləmək üçün digər dillər kimi) əsas məqsədi sorğuları hazırlamaq və yerinə yetirməkdir. Bir və ya bir neçə cədvəldən məlumatların seçilməsi nəticəsində bir sıra qeydlər əldə edilə bilər, çağırılır təqdimat.

Performans mahiyyətcə sorğunun icrası nəticəsində yaranan cədvəldir. Deyə bilərik ki, saxlanılan sorğu növüdür. Eyni cədvəllərdən istifadə edərək birdən çox görünüş yarada bilərsiniz. Görünüşün özü görünüş identifikatorunu və onu əldə etmək üçün edilməli olan sorğunu təyin etməklə təsvir olunur.



Baxışlarla işləmək rahatlığı üçün SQL dilinə kursor anlayışı daxil edilmişdir. Kursor qeydlər toplusunu emal edərkən hərəkət etmək üçün istifadə olunan bir növ göstəricidir.

SQL-də kursorun təsviri və istifadəsi aşağıdakı kimidir. Proqramın təsviri hissəsində kursor tipli dəyişən (CURSOR) ilə əlaqələndirilir SQL bəyanatı(adətən ilə SELECT bəyanatı). Proqramın icra hissəsində kursor açılır (OPEN<имя курсора», перемещение курсора по записям (FETCI-1 <имя курсора>...), sonra müvafiq emal və nəhayət kursor bağlanır (CLOSE<имя курсора>).

Əlaqəli DBMS-lərdə əlaqələr üzərində əməliyyatlar aparmaq üçün E. Codd tərəfindən təklif olunan nəzəri sorğu dilləri riyazi əsası olan iki qrup dildən istifadə olunur:

Əlaqəli cəbr;

Əlaqəli hesablama.

Əlaqəli cəbrdə Bütün hərəkətlərin operandları və nəticələri münasibətlərdir. Münasibətli cəbr dilləri prosedurdur, çünki relyasiyalı verilənlər bazasındakı sorğu nəticəsində yaranan əlaqə əlaqələrə tətbiq edilən əlaqə operatorlarının ardıcıllığını yerinə yetirməklə qiymətləndirilir. Operatorlar əlaqələr olan operandlardan və əlaqə əməliyyatlarından ibarətdir.

Codd relational cəbr əməliyyatlarını iki qrupa bölmək olar: əsas çoxluq-nəzəri və xüsusi relational. Birinci qrup əməliyyatlara çoxluq nəzəriyyəsinin klassik əməliyyatları daxildir: birləşmə, fərq, kəsişmə və məhsul. İkinci qrup verilənlərin manipulyasiyasının real problemlərinə qarşı adi dəst-nəzəri əməliyyatların işlənməsini təmsil edir, bura əməliyyatlar daxildir: proyeksiya, seçim, bölmə və əlaqə.

Hesablama dilləri qeyri-prosessualdır (təsviri və ya deklarativ) və sorğuların birinci dərəcəli predikatdan (funksiya ifadələri) istifadə edilərək ifadə edilməsinə imkan verir ki, onlar kortejlər və ya əlaqə domenləri təmin etməlidir. Belə bir dildən istifadə etməklə yerinə yetirilən verilənlər bazası sorğusu yalnız istənilən nəticə haqqında məlumat ehtiva edir. Bu dillər sorğuların yazılması üçün qaydalar dəstinin olması ilə xarakterizə olunur. Xüsusilə, SQL bu qrupun dillərinə aiddir.

Tətbiq xüsusiyyətləri SQL sorğuları

SQL sorğusu SQL ifadəsi ilə yaradılmış sorğudur. SQL sorğularının nümunələri qoşulma sorğuları, server sorğuları, nəzarət sorğuları və tabe sorğulardır.

Qoşulma sorğusu bir və ya bir neçə cədvəldən və ya sorğudan olan sahələri (sütunları) qeydlərin nəticə dəstində bir sahəyə və ya sütuna birləşdirən sorğudur. Məsələn, altı satış işçisi menecerə hər ay öz inventarlarının inventarını təqdim edir. Qoşulma sorğusu yaratmaqla siz bu inventarları nəticə qeydləri dəstində birləşdirə və sonra qoşulma sorğusu əsasında cədvəl sorğusu yarada bilərsiniz.

Serverə edilən sorğu SQL əmrlərini ODBC vasitəsilə serverə, məsələn, Microsofta ötürür SQL Server. Server sorğuları onlara qoşulmaq əvəzinə serverdəki cədvəllərlə birbaşa işləməyə imkan verir. Serverə sorğunun nəticəsi qeydlərin yüklənməsi və ya verilənlərin dəyişdirilməsi ola bilər.

Nəzarət sorğusu Access və ya SQL Server cədvəlləri kimi verilənlər bazası obyektlərini yaradır və ya dəyişdirir.

Alt sorğu başqa bir seçim və ya dəyişiklik sorğusunda SQL SELECT ifadəsindən ibarətdir. Bu təlimatlar yeni sahənin müəyyən edilməsi üçün sorğu formasının “Sahə” sətrinə və ya sahənin seçilməsi şərtinin müəyyən edilməsi üçün “Seçmə Şərti” sətrinə daxil edilir. Alt sorğular aşağıdakıları etmək üçün istifadə olunur:

EXISTS və ya NO EXISTS sözlərindən istifadə edərək bəzi nəticələrin mövcudluğunun alt sorğuda yoxlanılması;

Əsas sorğuda alt sorğuda qaytarılmış dəyərlərə bərabər, böyük və ya ondan kiçik olan hər hansı dəyərləri axtarır (HƏR, IN və ya ALL qorunan sözlərdən istifadə etməklə);

Alt sorğular daxilində alt sorğuların yaradılması (iç-içə alt sorğular).

Access-də SQL dili ekran formaları, hesabatlar hazırlamaq, həmçinin makrolar və VBA proqramları yaratmaq üçün istifadə edilə bilər.

QBE və SQL dilləri arasında əlaqə

Access-də QBE və SQL dilləri arasında sıx əlaqə mövcuddur. İstifadəçi tərəfindən doldurulmuş QBE dilində sorğu cədvəlləri (formaları) dərhal icra edilməzdən əvvəl SQL ifadələrinə çevrilir. Yəni, SQL dili sorğuların icrası üçün daxili standartdır. Bu mexanizmin üstünlüyü Access sisteminə yerli və uzaq kompüterlərdə icra üçün sorğuların hazırlanmasını birləşdirməyə imkan verir. Sonuncu halda, SQL mesajı əslində kompüterə - sorğu serverinə ötürülür.

Access-də sorğu üç rejimdən (vəziyyətlərdən) birində ola bilər: Dizayn, SQL və Cədvəl. Dizayn rejimi sıfırdan yeni sorğu hazırlamaq üçün (Sehrbazlar və ya digər alətlərdən istifadə etmədən) və ya mövcud sorğunun tərtibatını dəyişdirmək üçün istifadə olunur. SQL rejimi SQL ifadələrini daxil etmək və ya baxmaq üçün istifadə olunur. Cədvəl rejimi sorğu nəticələri ilə işləmək üçün istifadə olunur.

Formalarda və Hesabatlarda SQL

Ekranlarda və hesabatlarda qeydlərin əsas mənbələri cədvəllər və sorğulardır. İkinci halda, sorğu hazır verilənlər bazası sorğusu və ya forma və ya hesabat işlənib hazırlanarkən yaradılan sorğu ola bilər.

Makrolarda SQL

Makro əmrləri verilənlər bazası ilə işləyərkən tez-tez təkrarlanan hərəkətlərin icrasını avtomatlaşdırmaq üçün istifadə olunan makroların bir hissəsidir. Makro arqumentləri olan bir və ya bir neçə makro əmridir.

Makrolar verilənlər bazası pəncərəsindən və ya müəyyən hadisələr baş verdikdə avtomatik olaraq çağırılır. Makronun çağırıldığı hadisə, məsələn, forma sahəsindəki düymənin basılması və ya verilənlər bazası pəncərəsinin açılması ola bilər. Verilənlər bazası obyektləri üzərində müəyyən hərəkətləri yerinə yetirməklə yanaşı, makrolar digər makroları, Visual Basic proqramlarını və xarici proqramları çağıra bilər.

Çoxlu makro əmrlərdən iki makro əmri birbaşa SQL ilə əlaqəlidir: SQL Sorğunu Çalıştır (SQL-i Çalıştır) və Açıq Sorğunu (OpenQuery)

Makro əmri Run SQL Query müvafiq SQL ifadəsindən istifadə edərək Giriş dəyişikliyi və ya nəzarət sorğusunu icra edir. Bu makro ilk sorğuları saxlamadan makroda hərəkətləri yerinə yetirməyə imkan verir. Siz həmçinin makrodan istifadə edərək saxlanılan sorğuları yerinə yetirə bilərsiniz.

İstəkləri dəyişdirin aşağıdakı funksiyaları yerinə yetirən SQL ifadələridir: əlavə etmək (INSERT INTO), silmək (DELETE), cədvəl yaratmaq (SEÇ...INTO) və yeniləmək (YENİLƏNİB).

Nəzarət sorğuları aşağıdakı funksiyaları yerinə yetirən SQL ifadələridir: cədvəl yaratmaq (CREATE TABLE), cədvəli dəyişdirmək (ALTER TABLE), cədvəli buraxmaq (DROP TABLE), indeks yaratmaq (CREATE INDEX) və index buraxmaq (DROP INDEX)

Makro əmrinin yeganə və tələb olunan arqumenti SQL Sorğunun icrası SQL ifadəsidir. SQL mətni kimi makro arqument - təlimatlar makro daxiletmə pəncərəsinə əl ilə daxil edilir və ya SQL pəncərəsindən kopyalanır, bu, çox vaxt daha rahatdır.

Makro əmri OpenRequest seçmə və ya çarpaz sorğunu (cədvəl, dizayn və önizləmə rejimlərində) açmağa, məlumatları dəyişdirmək və ya daxil etmək üçün sorğu keçirməyə imkan verir.

Makro üç arqument müəyyən edir: sorğu adı, rejim və məlumat rejimi. Birinci arqument açmaq üçün sorğunun adını müəyyən edir və tələb olunur. İkinci arqument sorğunun açılması rejimini təyin edir (Cədvəl, Dizayn və Görünüş). Üçüncü arqument sorğuya verilənlərin daxil edilməsi rejimini təsvir edir (“Əlavə et”, “Dəyişdir” və “Yalnız oxu”)

VBA proqramlarında SQL

VBA, makrolar kimi, Access verilənlər bazası obyektlərində təkrarlanan əməliyyatları avtomatlaşdırmaq üçün nəzərdə tutulmuşdur.

Access-də VBA proqramlarını işlətməyin aşağıdakı yolları var:

Tədbirin işlənməsi proseduruna proqramın daxil edilməsi;

İfadədə funksiyanın çağırılması;

Başqa prosedurda və ya sazlama pəncərəsində Alt prosedurun çağırılması;

Makroda RunCode (RunCode) makro əmrinin icrası.

Funksiyalar formalarda, hesabatlarda və ya sorğularda hesablanmış sahələri müəyyən edən ifadələrdə istifadə olunur. İfadələr sorğu və filtrlərdə, həmçinin makrolarda, VBA ifadələrində və metodlarında və SQL ifadələrində şərtləri müəyyən etmək üçün istifadə olunur. Alt prosedura digər prosedurlardan çağırılan ictimai VBA alt proqramları daxil ola bilər.

Visual Basic for Applications proqramında SQL ifadələrindən istifadə edərək verilənlər bazası sorğusunun icrasına baxaq.

Sorğu verilənlər bazasından müəyyən şərtlərə cavab verən qeydləri seçir (seçim sorğusu) və ya müəyyən şərtləri təmin edən qeydlərlə müəyyən hərəkətləri yerinə yetirmək üçün göstərişlər verir (dəyişiklik sorğusu).

Sorğuları yerinə yetirməyin aşağıdakı yolları var:

Execute metodunun çağırılması (dəyişikliklər üçün SQL sorğularını yerinə yetirmək üçün);

Xüsusi QueryDef obyektinin yaradılması və icrası;

OpenRecordset metoduna arqument kimi SQL ifadəsindən istifadə;

Mövcud QueryDef obyektində OpenRecordset metodunu icra edin;

RunSQL və OpenQuery metodlarının çağırılması.

İcra üsulu verilənlər bazasında qeydləri qaytarmayan dəyişiklik etmək lazımdırsa istifadə olunur. Məsələn, qeydlərin daxil edilməsi və ya silinməsi əməliyyatları.

QueryDef obyekti verilənlər bazasında saxlanmış sorğu tərifini təmsil edir. Bu tərtib edilmiş SQL ifadəsi kimi düşünülə bilər.

OpenRecordset metodu Recordset tipli obyekti onun üzərində sonrakı əməliyyatları yerinə yetirmək üçün açmaq üçün istifadə olunur.

RunSQL metodu makro icra edir SQL Sorğunun icrası VBA proqramında

OpenQuery metodu VBA proqramında OpenQuery makro əmrini yerinə yetirir. Onun köməyi ilə siz Datasheet, Design və ya View rejimində sorğu aça bilərsiniz. Bu, verilənlərlə işləmək üçün aşağıdakı rejimlərdən birini təyin edir: əlavə etmək, dəyişdirmək və ya yalnız oxumaq.

Sorğunun icra variantının seçimi proqramçı tərəfindən həll olunan məsələnin xüsusiyyətləri nəzərə alınmaqla müəyyən edilir.

Hər bir veb tərtibatçı verilənlər bazası sorğularını yazmaq üçün SQL bilməlidir. Və phpMyAdmin ləğv edilməsə də, aşağı səviyyəli SQL yazmaq üçün tez-tez əllərinizi çirkləndirmək lazımdır.

Buna görə də biz SQL-in əsasları ilə bağlı qısa bir tur hazırladıq. Gəlin başlayaq!

1. Cədvəl yaradın

CREATE TABLE ifadəsi cədvəllər yaratmaq üçün istifadə olunur. Arqumentlər sütunların adları, eləcə də onların məlumat növləri olmalıdır.

adlı sadə bir cədvəl yaradaq ay. 3 sütundan ibarətdir:

  • id– Təqvim ilində ayın nömrəsi (tam ədəd).
  • ad– Ayın adı (sətir, maksimum 10 simvol).
  • günlər– Bu ayda günlərin sayı (tam ədəd).

Müvafiq SQL sorğusu belə görünür:

CƏDVƏL YARADIN aylar (id int, ad varchar(10), gün int);

Həmçinin cədvəllər yaradarkən sütunlardan biri üçün əsas açar əlavə etmək məsləhətdir. Bu, qeydləri unikal saxlayacaq və sorğuların alınmasını sürətləndirəcək. Bizim vəziyyətimizdə, ayın adı unikal olsun (sütun ad)

CREATE TABLE ayları (id int, name varchar(10), days int, PRIMARY KEY (ad));

Tarix və saat
Məlumat növüTəsvir
TARİXTarix dəyərləri
TARİX VAXTTarix və vaxt dəyərləri dəqiqəyə uyğundur
TIMEZaman dəyərləri

2. Sətirlərin daxil edilməsi

İndi cədvəlimizi dolduraq ay faydalı məlumat. Cədvəllərə qeydlərin əlavə edilməsi INSERT əmrindən istifadə etməklə həyata keçirilir. Bu təlimatı yazmağın iki yolu var.

Birinci üsul verilənlərin daxil ediləcəyi sütunların adlarını müəyyən etmək deyil, yalnız qiymətləri təyin etməkdir.

Bu qeyd üsulu sadədir, lakin təhlükəlidir, çünki layihə genişləndikcə və cədvəl redaktə olunduqca sütunların əvvəlki qaydada olacağına zəmanət yoxdur. INSERT ifadəsini yazmağın təhlükəsiz (və eyni zamanda daha çətin) yolu həm dəyərləri, həm də sütunların sırasını göstərməyi tələb edir:

Siyahıdakı ilk dəyər budur DƏYƏRLƏR ilk göstərilən sütun adına uyğun gəlir və s.

3. Cədvəllərdən verilənlərin çıxarılması

SELECT ifadəsi verilənlər bazasından məlumat əldə etmək istədiyimiz zaman ən yaxşı dostumuzdur. Çox tez-tez istifadə olunur, buna görə də bu bölməyə çox diqqət yetirin.

SELECT ifadəsinin ən sadə istifadəsi cədvəldən bütün sütunları və sətirləri qaytaran sorğudur (məsələn, adlarına görə cədvəllər). personajlar):

"simvollardan" * SEÇİN

Ulduz (*) simvolu bütün sütunlardan məlumat almaq istədiyimizi bildirir. SQL verilənlər bazaları adətən birdən çox cədvəldən ibarət olduğundan, FROM açar sözünü, ardınca cədvəlin adını boşluqla ayırmaq lazımdır.

Bəzən biz cədvəlin bütün sütunlarından deyil, məlumatları əldə etmək istəmirik. Bunun üçün ulduz işarəsi (*) yerinə biz istədiyiniz sütunların adlarını vergüllə ayıraraq yazmalıyıq.

SELECT id, aydan ad

Bundan əlavə, bir çox hallarda biz nəticədə əldə olunan nəticələrin müəyyən bir ardıcıllıqla çeşidlənməsini istəyirik. SQL-də biz bunu ORDER BY istifadə edərək edirik. O, isteğe bağlı dəyişdiricini qəbul edə bilər - ASC (standart) artan qaydada çeşidləmə və ya DESC, azalan qaydada çeşidləmə:

İD SEÇİN, ad AYDAN SİPARİŞ BY ad DESC

SİFARİŞ BY istifadə edərkən, SEÇİM ifadəsində onun sonuncu gəldiyinə əmin olun. Əks halda səhv mesajı göstərilir.

4. Məlumatların filtrasiyası

Siz SQL sorğusundan istifadə edərək verilənlər bazasından xüsusi sütunları necə seçməyi öyrəndiniz, bəs biz də xüsusi sətirləri əldə etməli olsaq nə etməli? WHERE bəndi vəziyyətdən asılı olaraq məlumatları süzgəcdən keçirməyə imkan verən burada xilasetmə işinə gəlir.

Bu sorğuda biz cədvəldən yalnız həmin ayları seçirik ay, (>) operatorundan istifadə edərək 30 gündən çox olan.

İD SEÇİN, ad FROM AYDAN günlər > 30

5. Ətraflı məlumat filtrasiyası. AND və OR operatorları

Əvvəllər biz bir meyardan istifadə edərək məlumatların filtrasiyasından istifadə edirdik. Daha mürəkkəb məlumatların filtrasiyası üçün siz AND və OR operatorlarından və müqayisə operatorlarından (=,<,>,<=,>=,<>).

Burada bütün zamanların ən çox satılan dörd albomunu ehtiva edən bir cədvəlimiz var. Rok kimi təsnif edilən və 50 milyon nüsxədən az satılanları seçək. Bu iki şərt arasında AND operatorunu yerləşdirməklə bunu asanlıqla etmək olar.


Janr = "rok" və milyonlarla satış olan albomlardan * SEÇİN<= 50 ORDER BY released

6. İçində/Arasında/Bəyən

WHERE həmçinin ən çox istifadə olunan sorğuları tez yoxlamağa imkan verən bir neçə xüsusi əmrləri dəstəkləyir. Budur onlar:

  • IN – hər hansı biri yerinə yetirilə bilən bir sıra şərtləri göstərmək üçün xidmət edir
  • BETWEEN – dəyərin müəyyən edilmiş diapazonda olub olmadığını yoxlayır
  • LIKE – xüsusi nümunələri axtarır

Məsələn, albomları seçmək istəsək popcan musiqi üçün IN("value1","value2") istifadə edə bilərik.

SEÇİN * Albomlardan HARADA janr ("pop", "ruh");

1975-1985-ci illər arasında çıxan bütün albomları əldə etmək istəyiriksə, yazmalıyıq:

SEÇİN * 1975-1985-ci illərdə buraxılmış albomlardan;

7. Funksiyalar

SQL hər cür faydalı işi yerinə yetirən funksiyalarla doludur. Ən çox istifadə edilənlərdən bəziləri bunlardır:

  • COUNT() – sətirlərin sayını qaytarır
  • SUM() - ədədi sütunun ümumi cəmini qaytarır
  • AVG() - qiymətlər dəstinin orta qiymətini qaytarır
  • MIN() / MAX() – Sütundan minimum/maksimum dəyəri alır

Cədvəlimizdə ən son ili əldə etmək üçün aşağıdakı SQL sorğusunu yazmalıyıq:

SELECT MAX (buraxılmış) albomlardan;

8. Alt sorğular

Əvvəlki paraqrafda verilənlərlə sadə hesablamalar aparmağı öyrəndik. Bu hesablamaların nəticəsini istifadə etmək istəsək, iç içə sorğular olmadan edə bilmərik. Tutaq ki, biz çıxış etmək istəyirik rəssam, albomburaxılış ili cədvəldəki ən qədim albom üçün.

Bu xüsusi sütunları necə əldə edəcəyimizi bilirik:

SELECT artist, albom, FROM albomlardan buraxılmışdır;

Ən erkən ili necə əldə edəcəyimizi də bilirik:

SELECT MIN(buraxılmış) albomdan;

İndi tələb olunan hər şey, WHERE istifadə edərək iki sorğunu birləşdirməkdir:

SEÇİN rəssam,albom,buraxılmış albomlardan HERİ buraxılmış = (SEÇ MIN(buraxılmış) albomlardan);

9. Cədvəllərin birləşdirilməsi

Daha mürəkkəb verilənlər bazalarında bir-biri ilə əlaqəli çoxlu cədvəllər var. Məsələn, aşağıda video oyunlar haqqında iki cədvəl var ( Video oyunlar) və video oyun tərtibatçıları ( oyun_revelopers).


Cədvəldə Video oyunlar inkişaf etdirici sütunu var ( developer_id), lakin o, tərtibatçının adını deyil, tam ədədi ehtiva edir. Bu nömrə identifikatoru ( id) oyun tərtibatçıları cədvəlindən müvafiq tərtibatçının ( oyun_revelopers), məntiqi olaraq iki siyahını birləşdirərək, hər ikisində saxlanan məlumatı eyni vaxtda istifadə etməyə imkan verir.

Əgər biz oyunlar haqqında bilməli olduğumuz hər şeyi qaytaran sorğu yaratmaq istəyiriksə, hər iki cədvəldən sütunları əlaqələndirmək üçün INNER JOIN istifadə edə bilərik.

video_games.name, video_games.janr, game_developers.name, game_developers.country video_oyunlardan DAXİL SEÇİN video_games.developer_id = game_developers.id;

Bu, ən sadə və ən çox yayılmış JOIN növüdür. Bir neçə başqa variant var, lakin bunlar daha az yayılmış hallara aiddir.

10. Ləqəblər

Əvvəlki nümunəyə baxsanız, adlanan iki sütunun olduğunu görəcəksiniz ad. Bu çaşdırıcıdır, buna görə də təkrarlanan sütunlardan birinə ləqəb təyin edək, məsələn ad masadan oyun_revelopersçağırılacaq inkişaf etdirici.

Cədvəl adlarına ləqəb verməklə də sorğunu qısalda bilərik: Video oyunlar zəng edək oyunlar, oyun_revelopers - inkişaf etdiricilər:

games.name, games.janr, devs.name SEÇİN developer AS, devs.country video_games FROM FROM games AS DAXİL OYUNLARDA QOŞULUN game_developers AS devs ON games.developer_id = devs.id;

11. Məlumatların yenilənməsi

Çox vaxt bəzi sətirlərdəki məlumatları dəyişdirməliyik. SQL-də bu, UPDATE ifadəsindən istifadə etməklə edilir. UPDATE bəyanatı aşağıdakılardan ibarətdir:

  • Əvəzetmə dəyərinin yerləşdiyi cədvəl;
  • Sütun adları və onların yeni dəyərləri;
  • Yeniləmək istədiyimiz sətirlər WHERE istifadə edərək seçilmişdir. Bu edilmədikdə, cədvəldəki bütün sətirlər dəyişəcək.

Aşağıda cədvəl var tv_seriya seriallar və onların reytinqləri ilə. Bununla birlikdə, kiçik bir səhv cədvələ girdi: seriyaya baxmayaraq Game of Thrones və komediya kimi təsvir edilir, əslində belə deyil. Gəlin bunu düzəldək!

Cədvəl məlumatları tv_series YENİLƏNİB tv_series SET janrı = "drama" HARADA id = 2;

12. Məlumatların silinməsi

SQL istifadə edərək cədvəl cərgəsinin silinməsi çox sadə bir prosesdir. Sizə lazım olan tək şey silmək istədiyiniz cədvəli və sıranı seçməkdir. Əvvəlki nümunədən cədvəlin sonuncu sətirini silək tv_seriya. Bu, >DELETE təlimatından istifadə etməklə edilir.

id = 4 olan tv_seriyasından SİLİN

DELETE ifadəsini yazarkən diqqətli olun və WHERE bəndinin mövcud olduğundan əmin olun, əks halda cədvəldəki bütün sətirlər silinəcək!

13. Cədvəli silin

Bütün sətirləri silmək, lakin cədvəlin özünü tərk etmək istəyiriksə, TRUNCATE əmrindən istifadə edin:

TRUNCATE TABLE masa_adı;

Həm məlumatları, həm də cədvəlin özünü həqiqətən silmək istəsək, DROP əmri bizim üçün faydalı olacaq:

DROP TABLE masa_adı;

Bu əmrlərlə çox diqqətli olun. Onlar ləğv edilə bilməz!/p>

Bununla bizim SQL dərsliyi yekunlaşır! Bizim əhatə etmədiyimiz çox şey var, lakin artıq bildikləriniz sizə veb karyeranız üçün bəzi praktiki bacarıqlar vermək üçün kifayət etməlidir.

MS Access DBMS proqramı cədvəllər və massivlərə əlavə edilmiş verilənlər bazası yaratmaq və saxlamaq üçün tam hüquqlu köməkçidir. Verilənlər bazası çox böyükdürsə, lazımi dəyərləri tez tapmaq olduqca çətindir.

Bu səbəbdən Access-də sorğular adlı funksiya var. Gəlin onun nə olduğunu, necə işlədiyini və hansı xüsusiyyətlərə malik olduğuna baxaq.

Microsoft Access-də sorğuların yaradılması

Access-də sorğuların necə yaradılacağını anlamaq üçün siz DBMS ilə işləməyin əsaslarını bilməlisiniz.

Bunu etməyin iki yolu var bu prosedur:

  • Sorğu qurucusu.
  • Sorğu Sihirbazı.

Birinci üsul sizə bütün mövcud sorğulardan hər hansı birini əl ilə yaratmağa imkan verir, lakin istifadəçinin Access proqramı ilə işləmək təcrübəsinə malik olduğuna dair kiçik xəbərdarlıqla. O, ən azı onun əsas vəzifələrini də başa düşməlidir. İkinci üsula gəldikdə, onu daha ətraflı nəzərdən keçirmək lazımdır.

Başlayanlar üçün asan yol

Bilikli şəxs, bir neçə siçan klikləməklə, istifadəçinin sorğunu tamamlaması üçün lazım olan komponentləri seçir və sonra toplanmış əsas dəyərlərə uyğun olaraq tez bir reyestr yaradır. Əgər bu, DBMS ilə ilk tanışlıqdırsa və istifadəçinin Access-də sorğuların necə yaradılması barədə heç bir fikri yoxdursa, o zaman Wizard proqramı seçilir.

Bu rejimdə siz aşağıdakı sorğu növləri ilə tanış ola və anlaya bilərsiniz:

  • Sadə.
  • xaç.
  • Tabeliyində olmayan qeydlər.
  • Dublikat girişlər.

Bu seçim artıq Master ilə işin ilk mərhələsində edilir. Gələcəkdə, aydın təlimatlara əməl edərək, hətta təcrübəsiz bir istifadəçi asanlıqla sorğu yarada bilər. Onun növləri ilə tanış olaq.

Sadə sorğu

Bu cədvəl aləti istifadəçi tərəfindən müəyyən edilmiş sahələrdən tələb olunan məlumatları toplayır. Təkcə ad göstərir ki, bu, yeni başlayanlar üçün ən populyar sorğu növüdür. Onun rahatlığı bu prosedurun yeni sekmədə açılmasındadır. Buna görə də Access 2010-da sorğunun necə yaradılması sualının cavabı birinci Sehrbaz menyusunu açdıqdan sonra aydın olur.

Çarpaz sorğu

Bu növ seçmə daha mürəkkəbdir. Bu rejimdə “Sehrbaz”dan istifadə edərək Access-də çarpaz sorğunun necə yaradılacağını anlamaq üçün ilk pəncərədə bu funksiyaya klikləmək lazımdır.

Ekranda orijinalda yerləşən üç sütuna qədər seçə biləcəyiniz bir cədvəl görünəcək.

Qalan seçilməmiş sahələrdən biri sorğu cədvəlinin başlıqları kimi istifadə edilə bilər. Prosedurun üçüncü mərhələsində (kəsişmə) dəyişkənlik funksiyası ilə başqa qiymət seçilir (orta qiymət, cəmi, birinci, sonuncu).

Fotoşəkildə çarpaz sorğunun yaradıldığı göstərilir və bu verilmiş parametrlər lazımi tədbirlər görülüb.

Dublikat girişlər

Adından göründüyü kimi, bu sorğunun əsas məqsədi cədvəldəki bütün eyni sətirləri göstərilən parametrlərə uyğun seçməkdir. Bu belə görünür:

Bundan əlavə, bir anda bir neçə sətir uyğunlaşdırmaq üçün əlavə sahələri seçə bilərsiniz.

Dublikat girişləri seçmək üçün sorğuların siyahısını genişləndirməli və orada yeni qovluq yaratmalısınız. Sonra, "Yeni Sorğu" pəncərəsində "Dublikat qeydləri axtarın" sətrini seçin. Sonra ustanın göstərişlərinə əməl etməlisiniz.

Tabeliyində olmayan qeydlər

Bu Master - Qulsuz qeydlər rejimində mövcud olan sonuncu sorğu növüdür.

Bu halda, yalnız cədvəl və sorğuların heç bir sahəsinə daxil olmayan, lakin artıq yaradılmış dəyərlər seçilir.

Bu tip yalnız bir neçə verilənlər bazası olduğu hallarda aktualdır.

Bu dörd sorğu növünün hamısı mürəkkəb elementlərlə işləmək üçün başlanğıc nöqtəsidir, lakin verilənlər bazasında sorğunun necə yaradılacağını başa düşməyi asanlaşdırır. Məlumata giriş.

MS Access-də sorğu funksiyaları

Yuxarıda təsvir edilən addımları niyə yerinə yetirməli olduğunuzu anlayaq. Bütün sadə və vəzifəsi mürəkkəb sorğular V DBMS-ə daxil olmaq aşağıdakı kimidir:

  • Cədvəllərdə lazımi məlumatların toplanması, sonra baxılması, redaktə edilməsi, yeni dəyərlərin əlavə edilməsi.
  • Hər növ hesabat formalarının hazırlanması üçün əla mənbə materialı.
  • Nəticələrin ekranda (orta qiymət, cəmi, kənarlaşma, cəmlər) göstərilməsi ilə bütün verilənlər massivləri üzrə riyazi və statistik hesablama prosedurlarının aparılması.

Nümunə sorğu

Bu tip verilənlər bazası işi mürəkkəbdir, çünki çoxlu cədvəllərin iştirakını tələb edir.

Bütün cədvəllərin ümumi açar sahələrinin olması zəruridir. Əks halda əməliyyat mümkün olmayacaq.

Access-də seçim sorğusunun necə yaradılacağını nəzərdən keçirək. Əvvəlcə tələb olunan sahələrin seçimi ilə sadə bir sorğu yaratmalısınız. Burada məlumatları istədiyiniz formaya gətirmək üçün redaktə edə bilərsiniz. Yeri gəlmişkən, edilən dəyişikliklər mənbə cədvəllərinə köçürüləcək, buna görə də bu məqam nəzərə alınmalıdır.

Açılan dizayner pəncərəsində “Cədvəl əlavə et” pəncərəsi doldurulur. Burada orijinal dəyərləri çıxarmaq üçün lazım olan cədvəlləri və ya sorğuları əlavə etməlisiniz.

Əlavə etdikdən sonra sorğu şərtlərini doldurmağa başlaya bilərsiniz. Bunun üçün bizə "Sahə" sətri lazımdır. Orada sorğu zamanı göstəriləcək cədvəllərdən həmin dəyərləri seçməlisiniz.

Əməliyyatı başa çatdırmaq üçün "Çalış" düyməsini sıxmalısınız.

Parametrləri ilə sorğu

Bu, istifadəçidən müəyyən verilənlər bazası bacarıqlarına malik olmasını tələb edən başqa bir mürəkkəb prosedur növüdür. Bu aksiyanın əsas istiqamətlərindən biri də iri miqyaslı məlumatlarla hesabatların yaradılmasına hazırlıq, eləcə də ümumi nəticələrin əldə edilməsidir. Dizaynerdən istifadə edərək Access 2007-də ​​sorğuların necə yaradılması aşağıda müzakirə olunacaq.

Tələb olunan sahələri seçmək üçün sadə sorğu yaratmaqla bu məlumat seçmə proseduruna başlamalısınız. Bundan sonra, Dizayner rejimi vasitəsilə "Seçim Şərti" sahəsini doldurmalısınız və daxil edilmiş dəyər əsasında seçim aparılacaqdır.

Beləliklə, Access-də parametrlə sorğunun necə yaradılacağı sualına cavab sadədir - seçim üçün ilkin parametrləri daxil edin. Dizaynerlə işləmək üçün Sorğu Sihirbazından istifadə etməlisiniz. Orada filtrasiya üçün ilkin məlumatlar yaradılır ki, bu da sonrakı işlər üçün əsasdır.

Qabaqcıl Çarpaz Sorğu

Biz vəziyyəti çətinləşdirməyə davam edirik. Birdən çox verilənlər cədvəli olduqda Access-də sorğuların necə yaradılması haqqında məlumatı başa düşmək daha çətindir. Qarşılıqlı sorğu yuxarıda Master ilə işləmək variantlarından biri kimi artıq müzakirə edilmişdir. Bununla belə, siz Dizayn rejimində oxşar sorğu yarada bilərsiniz.

Bunu etmək üçün "Query Builder" - "Cross" düyməsini basın.

Mənbə cədvəllərini əlavə etmək üçün menyu, həmçinin seçilmiş sahələri doldurmaq imkanı açılır. Diqqət etməli olduğunuz yeganə şey “qrup əməliyyatı” və “çarpaz cədvəl” maddələridir. Onlar düzgün doldurulmalıdır, əks halda prosedur düzgün tamamlanmayacaq.

Çarpaz sorğular bir çox məlumat mənbələrindən məlumat axtarmaq və əldə etmək üçün ən asan yoldur, həmçinin diaqramlar və qrafiklər yaratmaq imkanıdır.

Üstəlik, bu prosedurdan istifadə edərkən, bir neçə inkişaf variantı olsa da, axtarış daha sürətli tamamlanır.

Təbii ki, işinizə mane ola biləcək tələlər də var. Məsələn, verilənlər bazasını sütun dəyərlərinə görə çeşidləmək üçün sorğu yaratarkən sistem xəta yaradır. Yəni, yalnız standart maddələr üzrə çeşidləmə mövcuddur - "artan və enən".

Xülasə etmək üçün demək lazımdır ki, istifadəçi Access-də sorğuların necə yaradılmasına qərar verməlidir - Wizard və ya Dizaynerdən istifadə etməklə. Baxmayaraq ki, MS Access DBMS-dən istifadə edən insanların əksəriyyəti üçün birinci seçim daha uyğundur. Axı, Sihirbaz bütün işləri özü görəcək, istifadəçiyə sorğu şərtlərini seçmək üçün yalnız bir neçə siçan düyməsini buraxacaq.

Qabaqcıl parametrlərdən istifadə etmək üçün peşəkar səviyyədə verilənlər bazası təcrübəsi tələb olunur. Böyük verilənlər bazaları işə cəlb olunarsa, DBMS-nin pozulması və mümkün məlumat itkisinin qarşısını almaq üçün mütəxəssislərlə əlaqə saxlamaq yaxşıdır.

Yalnız proqramçılar üçün əlçatan olan bir məqam var. DBMS-nin əsas dili SQL olduğundan, istədiyiniz sorğu proqram kodu şəklində yazıla bilər. Bu rejimdə işləmək üçün artıq yaradılmış sorğunun xəttinə və açılmış vəziyyətdə klikləmək kifayətdir kontekst menyusu"SQL rejimi" seçin.

Ən sadə halda, sorğu tələb olunan sahələrin bir cədvəlindən seçimi, müəyyən edilmiş seçim şərtlərinə cavab verən qeydləri və sorğunun nəticələrinə baxmağı həyata keçirir.

Seçim şərtləri ilə seçim sorğularının qurulması

Gəlin Access-də malların tədarükü məlumat bazasının MƏHSUL cədvəlindən məlumatların alınması nümunəsindən istifadə edərək seçim sorğularına baxaq.

Problem 1. Tutaq ki, məhsulun bir sıra xüsusiyyətlərini onun adı ilə seçmək lazımdır.

  1. Verilənlər bazası pəncərəsində sorğu yaratmaq üçün lent nişanını seçin - yaradılış(Yarat) və qrupda İstək(Sorğular) düyməsini basın Sorğu Qurucusu(Sorğu Dizaynı). Dizayn rejimində boş seçim sorğusu pəncərəsi açılacaq - SorğuN(QueryN) və dialoq qutusu Cədvəl əlavə etmək(Cədvəl göstər) (Şəkil 4.2).
  2. Pəncərədə Cədvəl əlavə etmək(Cədvəl göstər) MƏHSUL cədvəlini seçin və düyməni basın Əlavə et(Əlavə et). Seçilmiş cədvəl sorğu məlumatı sxemi sahəsində göstəriləcək. Pəncərəni bağlamaq Cədvəl əlavə etmək(Cədvəl göstər) düyməsini basaraq Yaxın(Yaxın).

Sorğu tərtibatçısı pəncərəsində yerinə yetirilən hərəkətlər nəticəsində (şək. 4.1), üst panel Sorğu üçün seçilmiş cədvəlləri ehtiva edən sorğu məlumatı sxemi görünür. Bu vəziyyətdə bir masa MƏHSUL. Cədvəl sahələrin siyahısı ilə təmsil olunur. Cədvəl sahələrinin siyahısında ulduz işarəsi (*) ilə işarələnmiş birinci sıra cədvəl sahələrinin bütün dəstini bildirir. Aşağı panel doldurulmalı olan sorğu formasıdır.

Bundan əlavə, lentdə yeni tab (Sorğu Alətləri | Dizayn) görünür və avtomatik olaraq aktivləşdirilir (bu tabın bir hissəsi Şəkil 4.3-də göstərilmişdir), orada yaradılmış sorğunun növü rənglə vurğulanır - Nümunə(Seçin). Buna görə, standart olaraq, həmişə bir seçim sorğusu yaradılır. Bu tabdakı əmrlər icra üçün alətlər təqdim edir zəruri tədbirlər sorğu yaratarkən. Siz yaratdığınız zaman bu tab açılır yeni sorğu və ya mövcud olan redaktə edilir.

  1. Sorğu məlumatı sxemindən istənilən cədvəli silmək üçün siçan kursorunu onun üzərinə qoyun və düyməni basın. Əlavə etmək üçün - düyməni basın Cədvəl göstərin(Cədvəl göstər) qrupda Sorğunun qurulması(Sorğu Quraşdırma) nişanı Sorğularla işləmək | Konstruktor(Sorğu Alətləri | Dizayn) və ya əmri işə salın Cədvəl əlavə edin(Cədvəl göstər) kontekst menyusunda sorğu məlumat diaqramında çağırılır.
  2. Dizayner pəncərəsində (Şəkil 4.4) MƏHSUL cədvəlinin sahələr siyahısından NAME_IT, PRICE, AVAILABILITY_IT sahələrini ardıcıl olaraq sorğu formasının sütunlarına sətirə sürükləyin. Sahə(Sahə).
  3. Cədvəldən istədiyiniz sahələri müvafiq sorğu sütunlarına daxil etmək üçün aşağıdakı üsullardan istifadə edə bilərsiniz:
    • sorğu formasının birinci sətirində Sahə(Sahə) siyahı düyməsinin görünməsi üçün siçan düyməsini sıxın və siyahıdan istədiyiniz sahəni seçin. Siyahı sorğu verilənləri sxemində təmsil olunan cədvəllərin sahələrini ehtiva edir;
    • sorğu verilənləri sxemində cədvəl sahəsinin adına iki dəfə klikləyin;
    • Bütün cədvəl sahələrini daxil etmək üçün siz sorğu verilənləri sxemindəki cədvəl sahələrinin siyahısında * (ulduz işarəsi) simvolunu dartıb və ya iki dəfə klikləyə bilərsiniz.
  4. Tələb formasına təsadüfən lazımsız sahəni sürükləmisinizsə, onu silin. Bunu etmək üçün kursoru yuxarıdakı sütun etiketi sahəsinə aparın, orada qara ox kimi görünəcək və siçan düyməsini basın. Sütun vurğulanacaq. Düyməni basın və ya əmri işə salın Sütunları silin(Sütunları Sil) qrupda Sorğunun qurulması(Sorğu Quraşdırma).
  5. Xətdə Ekranda çıxış(Göstər) sahələri yoxlayın, əks halda onlar sorğu cədvəlinə daxil edilməyəcək.
  6. Xəttdə yazın Seçim şərtləri(Meyarlar) Şəkildə sorğu formasında göstərildiyi kimi məhsulun adı. 4.4. Seçim şərtindəki ifadə operatoru ehtiva etmədiyi üçün defolt olaraq = operatorundan istifadə olunur. İfadədə istifadə olunur mətn dəyəri avtomatik olaraq əlavə olunan qoşa dırnaq içərisində daxil edilir.
  7. Nəticələr qrupunda Run düyməsini və ya Baxış düyməsini klikləməklə sorğunu icra edin. Göstərilən seçim şərtlərinə cavab verən MƏHSUL cədvəlindən daxilolma ilə cədvəl rejimində ekranda sorğu pəncərəsi görünəcək.

ŞƏRH
Cədvəl görünüşündə sorğu pəncərəsi verilənlər bazası cədvəlinə baxmaq pəncərəsinə bənzəyir. Bəzi sorğu cədvəlləri vasitəsilə sorğunun altında yatan əsas cədvəldəki verilənlərə dəyişikliklər edilə bilər. Access 2010 verilənlər bazası cədvəlindən fərqli olaraq Datasheet görünüşündə baxılan sorğunun sütunu yoxdur Əlavə etmək üçün klikləyin(Əlavə etmək üçün klikləyin), cədvəlin strukturunu dəyişdirmək üçün nəzərdə tutulmuşdur. Bu rejimdə lent nişanında ev(Ev) verilənlər bazası cədvəlini açarkən eyni düymələr mövcuddur.

  1. Mürəkkəb bir məhsul adını daxil edərkən qeyri-dəqiqlik etsəniz, məhsul cədvəldə tapılmayacaq. Joker simvol operatorlarından istifadə - ulduz (*) və sual işarəsi (?) (ANSI-89 standartı, standart sorğular üçün istifadə olunur) və ya faiz işarəsi (%) və alt xətt (_) (ANSI-92, SQL Server üçün standart olaraq tövsiyə olunur) , tələb olunan sətirlərin axtarışını asanlaşdırır və bir çox səhvlərdən qaçınır. Tam məhsul adının əvəzinə Korpus* və ya Korpus% daxil edin. Sorğunu tamamlayın. Məhsulun adı sahəsində bir dəyər “Case” sözü ilə başlayırsa, sorğunun nəticəsi əvvəlki halda olduğu kimi olacaq. Sorğunu yerinə yetirdikdən sonra daxil edilmiş ifadə Like “Body*” operatoru ilə tamamlanacaq. Bu operator mətn sahələrində axtarış zamanı joker simvollardan istifadə etməyə imkan verir.
  2. Birdən çox məhsul tapmaq lazımdırsa, In operatorundan istifadə edin. Mötərizədə göstərilən siyahıdan istənilən dəyərlə bərabərliyi yoxlamağa imkan verir. Seçim şərtləri sətirinə daxil edin (“MiniTower qutusu”; “HDD Maxtor 20GB”; “FDD 3.5”). Sorğu cədvəli üç sıra göstərəcək. In bəyanatı joker simvollara icazə vermir.
  3. Nişanı klikləməklə sorğunuzu qeyd edin Fayl(Fayl) və əmri işə salın Yadda saxla(Yadda saxla). Pəncərədə Qoruma(Fərqli Saxla) sorğu adını daxil edin Misal 1. Qeyd edək ki, sorğunun adı təkcə mövcud sorğuların adları ilə deyil, həm də verilənlər bazasındakı cədvəllərin adları ilə üst-üstə düşməməlidir.
  4. Kontekst menyusu əmrindən istifadə edərək cari sorğunu bağlayın Yaxın(Bağlayın) və ya sorğu pəncərəsi düyməsini klikləməklə Yaxın(Yaxın).
  5. Naviqasiya panelində sorğunu vurğulayaraq və kontekst menyusundan əmri seçməklə saxlanmış sorğunu yerinə yetirin. Açıq(Açıq).
  6. Sorğunu redaktə etmək üçün onu naviqasiya sahəsində seçin və kontekst menyusunda əmri yerinə yetirin Konstruktor(Dizayn Görünüşü).

Tapşırıq 2. Tutaq ki, qiyməti 1000 rubldan çox olmayan və ƏDV 10% -dən çox olmayan malları, həmçinin qiyməti 2500 rubldan çox olan malları seçməlisiniz. Nəticədə məhsulun adı (NAIM_TOV), onun qiyməti (PRICE) və ƏDV (RATE_VAT) olmalıdır.

  1. Dizayn rejimində yeni sorğu yaradın, PRODUCT cədvəlini əlavə edin. Dizayner pəncərəsində (şək. 4.5) MƏHSUL cədvəlinin sahələr siyahısından NAME_IT, PRICE, RATE_VAT sahələrini ardıcıl olaraq sorğu formasına sürükləyin.
  2. Onu yazın Seçim şərtləri(Meyarlar), şəkildəki sorğu formasında göstərildiyi kimi. 4.5. Eyni sətirdə yazılmış şərtlər arasında məntiqi AND əməliyyatı yerinə yetirilir. Məntiqi OR əməliyyatı müxtəlif sətirlərdə yazılmış şərtlər arasında yerinə yetirilir.
  3. Sorğunu tamamlayın, düyməni basın İcra etmək Qrupda (qaçın). nəticələr(Nəticələr). Göstərilən seçim şərtlərinə cavab verən MƏHSUL cədvəlindən qeydlər olan cədvəl rejimində ekranda sorğu pəncərəsi görünəcək.
  4. Kursoru sorğunun başlığına qoyarkən çağırılan sorğunun kontekst menyusunda müvafiq əmri yerinə yetirərək sorğunu yadda saxlayın. Bir ad verin Misal 2.

Problem 3. Tutaq ki, müəyyən dövr üçün bütün fakturaları seçməliyik. Nəticədə faktura nömrəsi (NOM_NAK), anbar kodu (CODE_SC), göndərilmə tarixi (DATE_SHIP) və göndərilmiş malların ümumi dəyəri (SUMMA_INKL) olmalıdır.

  1. Dizayn görünüşündə yeni sorğu yaradın, INVOICE cədvəlini əlavə edin. Dizayner pəncərəsində, INVOICE cədvəlinin sahələri siyahısından bütün lazımi sahələri ardıcıl olaraq sorğu formasına sürükləyin.
  2. Sətirdəki DATE_OTGR sahəsi üçün Seçim şərtləri(Meyarlar) #01/11/2008# və #03/31/2008# arasında yazın. Between operatoru tarix intervalını təyin edir (ANSI-92-də bunun əvəzinə # işarəsi istifadə olunur tək sitatlar'). Bundan əlavə, bu operator rəqəmsal dəyər üçün interval təyin etməyə imkan verir.

Bunu gücləndirmək üçün video təlimatına baxın:

MS Access-də verilənlər bazası, cədvəllər, formalar və digər hesabatlar yarada bilərsiniz. Bu məqalə istifadəçiyə MS Access-də SQL sorğularını yerinə yetirməyə kömək edəcək. Verilənlər bazasından məlumatları əldə etmək üçün SQL-də istifadə edilən eyni sorğuları icra edə bilərsiniz. Bu məqalə MS Access-i öyrənməyə yenicə başlamış və MS Access-də SQL sorğularını yerinə yetirmək istəyən istifadəçilər üçün nəzərdə tutulub. Başlamazdan əvvəl zəruri olan yeganə şərt, təşkilatda istifadə olunan verilənlər bazasına girişinizin olmasıdır.

Addımlar


Nəyə ehtiyacınız olacaq

  • İstifadəçinin təşkilatın məlumat bazasına girişi olmalıdır
  • İstifadəçi MS Access vasitəsilə sorğuları yerinə yetirməzdən əvvəl texnologiya dəstəyi ilə əlaqə saxlaya bilər

Məqalə məlumatı

Bu səhifəyə 4443 dəfə baxılıb.

Bu məqalə faydalı oldu?

DBMS-ə daxil olmaq

Microsoft Accessüçün səciyyəvi olan bütün alətlər və imkanların olduğu relational tipli DBMS-dir müasir sistemlər verilənlər bazası idarə edilməsi. Əlaqəli verilənlər bazası məlumatların tapılmasını, təhlilini, saxlanmasını və qorunmasını asanlaşdırır, çünki onlar bir yerdə saxlanılır. İngilis dilindən tərcümə edilən Access "giriş" deməkdir. MS Access ən güclü, çevik və istifadəsi asan DBMS-lərdən biridir. Bir sıra proqram yazmadan orada əksər proqramlar yarada bilərsiniz, lakin çox mürəkkəb bir şey yaratmaq lazımdırsa, MS Access güclü proqramlaşdırma dilini - Visual Basic Tətbiqini təmin edir.

Microsoft Access DBMS-nin populyarlığı aşağıdakı səbəblərlə bağlıdır:

Əlçatanlıq və aydınlıq Access-dən biri olmağa imkan verir ən yaxşı sistemlər tez verilənlər bazası idarə proqramları yaratmaq;

OLE texnologiyasından istifadə etmək imkanı;

ilə inteqrasiya Microsoft paketi Ofis;

Veb texnologiyalarına tam dəstək;

Vizual texnologiya hərəkətlərinizin nəticələrini daim görməyə və onları düzəltməyə imkan verir;

Obyektləri inkişaf etdirmək üçün böyük bir "usta" dəstinin mövcudluğu.

Proqramın işlədiyi obyektlərin əsas növləri bunlardır: cədvəl, sorğu, forma, hesabat, səhifə, makro, modul.

Cədvəl məlumatları saxlamaq üçün istifadə olunan bir obyektdir. Hər bir cədvəl müəyyən bir növ obyekt haqqında məlumatı ehtiva edir. Cədvəldə müxtəlif növ verilənləri saxlayan sahələr (sütunlar) və qeydlər (sətirlər) var. Hər bir cədvəldə müəyyən edilmiş əsas açar olmalıdır (hər bir qeyd üçün unikal dəyəri olan bir sahə və ya birləşdirilmiş dəyəri hər qeyd üçün unikal olan bir neçə sahə), bu, cədvəldəki hər bir qeyd üçün unikal identifikatordur.

Məlumata çıxış sürətini artırmaq üçün fərdi cədvəl sahələri (və ya onların bir çoxu) indekslər elan edilə bilər. İndeks, cədvəl sətirlərinin unikallığını təmin etmək üçün əsas dəyərlərdən istifadə edərək cədvəldə axtarışı və çeşidlənməsini sürətləndirən bir vasitədir. Cədvəlin əsas açarı avtomatik olaraq indeksləşdirilir. Bəzi məlumat növləri olan sahələr üzrə indekslərin yaradılmasına icazə verilmir.

Sorğu istifadəçiyə bir və ya bir neçə cədvəldən istədiyi məlumatları əldə etməyə imkan verən obyektdir. Sorğular həmçinin artıq mövcud olan bir və ya bir neçə cədvəlin məlumatlarından istifadə edərək yeni cədvəllər yarada bilər. Ən çox yayılmış sorğu növü gətirmə sorğusudur. Seçilmiş sorğu müəyyən şərtlərə əsasən bir və ya bir neçə cədvəldən məlumatları seçir və sonra onları istədiyiniz ardıcıllıqla göstərir.

Forma əsasən verilənləri daxil etmək, onu ekranda göstərmək və ya proqramın işinə nəzarət etmək üçün nəzərdə tutulmuş obyektdir.

Hesabat, sonradan çap oluna və ya başqa bir proqramda sənədə daxil edilə bilən bir sənəd yaratmaq üçün nəzərdə tutulmuş bir obyektdir.

vizual inkişaf proqramlaşdırma bazası

Səhifə - Cari Access verilənlər bazasındakı məlumatlara daxil olmaq üçün istifadə olunur.

Makro, Access-in konkret hadisəyə cavab olaraq yerinə yetirməli olduğu bir və ya bir neçə hərəkətin strukturlaşdırılmış təsviri olan obyektdir.

Modul, bir prosesi daha kiçik hərəkətlərə bölməyə və makrolardan istifadə etməklə tapılmayan səhvləri aşkar etməyə imkan verən Microsoft Visual Basic proqramlarını ehtiva edən obyektdir.

DBMS Start - Programs - Microsoft Access-dən işə salınır. Fayl - Yeni əmrini yerinə yetirin.

Verilənlər bazası obyektləri ilə işləmək üçün interfeys vahiddir. Onların hər biri üçün standart iş rejimləri təmin edilir: Yaratmaq (obyekt strukturunun yaradılması); Konstruktor (obyektlərin strukturunun dəyişdirilməsi); Açıq (View, Run - verilənlər bazası obyektləri ilə işləmək üçün nəzərdə tutulmuşdur).

SQL Sorğu Dili

1986-cı ildən SQL (Structured Query Language). standart relational verilənlər bazası dilidir. Xüsusilə, Access və Excel proqramlarında istifadə olunur.

SQL saxlanılan məlumatları təsvir etmək, saxlanılan məlumatları əldə etmək və verilənləri dəyişdirmək üçün nəzərdə tutulmuş informasiya-məntiqi dildir. Əvvəlcə SQL istifadəçinin verilənlər bazası ilə işləməsinin əsas üsulu idi və cədvəllər yaratmağa, cədvəllərə yeni qeydlər əlavə etməyə, cədvəllərdən qeydləri götürməyə, qeydləri silməyə və cədvəl strukturlarını dəyişməyə imkan verən kiçik əmrlər (operatorlar) dəsti idi. SQL daha mürəkkəbləşdikcə, daha çox tətbiq yönümlü proqramlaşdırma dilinə çevrildi və istifadəçilər indi vizual sorğu qurucularından istifadə edə bilirlər.

SQL dili operatorlar toplusudur:

Data Definition Language (DDL) operatorları;

məlumatların manipulyasiya operatorları (Data Manipulation Language, DML);

verilənlərə çıxış tərifi operatorları (Data Control Language, DCL);

Transaction Control Language (TCL) operatorları.

MS Access-də sorğular SQL dilindən istifadə etməklə saxlanılır və həyata keçirilir. Əksər sorğular qrafik olaraq yaradıla bilsə də (naxış sorğuları), onlar SQL ifadələri kimi saxlanılır. Bəzi hallarda (məsələn, alt sorğularda) yalnız SQL-dən istifadə edə bilərsiniz.

SQL qeyri-prosedur dilidir. O, sadəcə olaraq nə edilməli olduğunu bəyan edir və icrası DBMS (verilənlər bazasının idarəetmə sistemi) öhdəsinə buraxılır.

SQL üç dəyərli məntiqdən istifadə edir. Ənənəvi Boolean TRUE və FALSE dəyərləri ilə yanaşı, NULL (UNKNOWN və ya NO DATA) istifadə olunur.

Əməliyyatlar digər proqramlaşdırma dillərində olduğu kimi ayrı-ayrı elementlər üzərində deyil, bütün verilənlər toplusu üzərində aparılır.

SQL sorğusu ifadələrdən ibarətdir. Hər bir göstərişdə bir neçə cümlə ola bilər.




Üst