KompüterlərProqram təminatı

SQL sorgularını necə tərtib etmək olar - ətraflı nümunələr

Hər birimiz müntəzəm vuruşur və müxtəlif məlumat bazalarını istifadə edir. Bir e-poçt ünvanını seçərkən verilənlər bazası ilə işləyirik. Verilənlər bazası, axtarış xidmətləri, müştərilərin məlumatlarını saxlayan banklar və s.

Lakin, verilənlər bazalarının daimi istifadəsinə baxmayaraq, bir çox proqram sistemlərinin inkişaf etdiriciləri üçün eyni şərtlərin fərqli şərhinə görə bir çox "ağ ləkələr" var. SQL dilinin araşdırılmasından əvvəl verilənlər bazasının əsas şərtlərini qısa təsvir edəcəyik. Və buna görə.

Verilənlər bazası - sifariş verilən məlumat strukturlarının saxlanılması və onların əlaqələndirilməsi üçün bir fayl və ya fayl dəsti. Çox vaxt verilənlər bazasına bir verilənlər bazası idarəetmə sistemi (DBMS) adlanır. Verilənlər bazası yalnız müəyyən bir formatda informasiya ehtiyatıdır və müxtəlif DBMS ilə işləyə bilər.

Cədvəl - sənədlərin saxlandığı bir qovluğu təsəvvür edin, müəyyən bir xüsusiyyət ilə qruplaşdırılır, məsələn, keçən ay üçün sifarişlərin siyahısı. Bu kompüter məlumat bazasında cədvəldir. Ayrı bir masa unikal bir ad var.

Məlumat növü - ayrı bir sütun və ya satırda saxlanıla bilən məlumatın növü. Bu müəyyən bir formatın nömrələri və mətni ola bilər.

Sütun və simli - hamımız satırlar və sütunlar olan elektron tablolarla işləyirdik. Hər hansı relational məlumat bazası oxşar şəkildə işləyir. Satırlar bəzən qeydlər deyilir.

İbtidai düyməni - masanın hər bir sıra unikal identifikasiyası üçün bir və ya bir neçə sütun ola bilər. Bir əsas əsas olmadan, lazımi satırları yeniləmək, dəyişdirmək və silmək çox çətindir.

SQL nədir?

SQL sorğu dili (ingilis dili strukturlaşdırılmış sorgu dili) yalnız verilənlər bazaları ilə işləmək üçün hazırlanmış və hazırda bütün populyar məlumat bazaları üçün standartdır. Dilin sintaksisi az sayda operatordan ibarətdir və öyrənmək asandır. Lakin, xarici sadəliyə baxmayaraq, hər hansı bir ölçülü verilənlər bazası ilə kompleks əməliyyatlar üçün sql sorğularının yaradılmasına imkan verir.

1992-ci ildən ANSI SQL adlanan ümumi qəbul edilmiş bir standart var. Bu, operatorların əsas sintaksis və funksiyalarını müəyyənləşdirir və ORACLE Microsoft SQL Server kimi verilənlər bazası bazarının bütün liderləri tərəfindən dəstəklənir . Dilin bütün xüsusiyyətlərini bir kiçik məqalədə nəzərdən keçirmək mümkün deyil, belə ki, biz yalnız əsas SQL sorguslarını nəzərdən keçirəcəyik. Nümunələr dilin sadəliyini və bacarıqlarını göstərir:

  • Verilənlər bazası və cədvəllərin yaradılması;
  • Məlumatların nümunəsi;
  • Qeydlər əlavə etmək;
  • Məlumatın dəyişdirilməsi və silinməsi.

SQL məlumat növləri

Verilənlər bazası cədvəlindəki bütün sütunlar bir məlumat növü saxlayır. SQL-də data növləri digər proqramlaşdırma dillərində olduğu kimi.

Məlumat növü Təsvir
INT Integers
REAL Üzən nöqtələr
TEXT Değişken uzunluklu karakter dizesi
DATE Sql sorğu "tarix" müxtəlif formatlarda
TIME Vaxt
CHAR Sabit uzunluğu mətn strings

Masalar və məlumat bazaları yaradın

SQL-də yeni məlumat bazaları, cədvəllər və digər sorğuları iki şəkildə yaratmaq olar:

  • DBMS konsolu vasitəsilə SQL hesabatları
  • Verilənlər bazasına daxil olan interaktiv idarəetmə vasitələrindən istifadə.

CREATE DATABASE ifadəsi ilə ilə yeni bir verilənlər bazası yaradır ; . Gördüyünüz kimi sintaksis sadə və qısadır.

Verilənlər bazasında olan masalar CREATE TABLE ifadəsi ilə aşağıdakı parametrlər yaradır:

  • Cədvəl adı
  • Sütun adları və məlumat növləri

Məsələn, aşağıdakı sütunlarla əmtəə cədvəli yaradın:

Sütun Təsvir
Commodity_id Product ID
Vendor_id Vendor ID (xarici tablo açarı satıcıları)
Commodity_name Məhsulun adı
Commodity_price Maliyet
Commodity_desc Təsvir

Cədvəl yarat:

TABLO TİCARƏTINI YARATDIR

(Commodity_id CHAR (15) NOT NULL,

Vendor_id CHAR (15) NOT NULL,

Commodity_name CHAR (254) NULL,

Commodity_price DECIMAL (8,2) NULL,

Commodity_desc VARCHAR (1000) NULL);

Cədvəl beş sütundan ibarətdir. Ad bir məlumat növü olduqdan sonra, sütunlar virgülle ayrılır. Sütunun dəyəri null (NULL) ola bilər və ya doldurulmalıdır (NULL deyil) və bu masa yaradılan zaman müəyyən edilir.

Bir cədvəldən məlumatların seçilməsi

Məlumatların alınması operatoru ən çox istifadə edilən SQL sorgusudur. Məlumat əldə etmək üçün, belə bir cədvəldən seçmək istədiyimizi göstərməlisiniz. Əvvəlcə sadə bir nümunə:

Əmtəadan əmtəə_saytı SELECT

SELECT ifadəsindən sonra, məlumatı almaq üçün sütunun adını verəcəyik və FROM masanı ifadə edir.

Sorgu icraatının nəticəsi, verilənlər bazasına girildikləri sıraya görə Commodity_name dəyərləri ilə cədvəlin bütün satırları olacaq Hər hansı bir çeşidləmə olmadan. Nəticəni sifariş etmək üçün, isteğe bağlı ORDER BY bəndini istifadə edin.

Bir neçə sahəni sorgulamak üçün aşağıdakı nümunədə olduğu kimi, onları virgüllə siyahlayırıq:

Commodity_id, commodity_name, Commodity_price əmanətindən SELECT

Sorgunun bir sonucu olaraq dizenin bütün sütunlarının değerini almaq mümkündür. Bunu etmək üçün "*" işarəsini istifadə edin:

Ticarətdən * SEÇİN

  • Bundan əlavə, SELECT dəstəkləyir:
  • Məlumatların sıralanması (ORDER BY bəndində)
  • Şərtlərə görə seçmə (WHERE)
  • Qruplaşdırma müddəti (GROUP BY)

Bir sıra əlavə etmək

Səbirə bir sıra əlavə etmək üçün, INSERT ifadəsi ilə SQL sorgularını istifadə edin. Əlavə etmək üç yolla edilə bilər:

  • Bütün yeni bir xətt əlavə edin;
  • Xəttin bir hissəsi;
  • Sorgu sonuçları.

Tam bir xətt əlavə etmək üçün, yeni sətrin cədvəlinin adı və sütunu (s) göstərməlisiniz. Məsələn nümunə verək:

Əmtəə dəyərlərinə INSERT ('106', '50', 'Coca-Cola', '1.68', 'No Alcogol,')

Məsələn, masaya yeni bir məhsul əlavə edir. Dəyərlər hər sütun üçün dəyərlərdən sonra müəyyən edilir. Sütun üçün müvafiq bir dəyər yoxdursa, NULL göstərməlisiniz. Sütunlar masanın yaranmasında göstərilən qaydada dəyərlərlə doludur.

Dizənin yalnız bir hissəsini əlavə etmək üçün nümunədə olduğu kimi, sütun adlarını açıq şəkildə göstərməlisiniz:

Əmtəə daxil məhsul (commodity_id, vendor_id, commodity_name)

VALULAR ('106', '50', 'Coca-Cola',)

Biz malların, tədarükçüin və onun adının yalnız identifikatorlarına daxil oldular və qalan sahələr boş qaldı.

Sorgu nəticələrini əlavə edin

Əsasən, INSERT strings əlavə etmək üçün istifadə olunur, lakin SELECT hesabatının nəticələrini əlavə etmək üçün istifadə edilə bilər.

Məlumatları redaktə edin

Veritabanı tablosunun sahələrindəki məlumatları dəyişdirmək üçün UPDATE ifadəsini istifadə etməlisiniz. Operator iki şəkildə istifadə edilə bilər:

  • Cədvəlin bütün satırları yenilənir.
  • Yalnız müəyyən bir simli üçün.

ƏLAVƏ üç ana elementdən ibarətdir:

  • Dəyişiklik etmək istədiyiniz cədvəl;
  • Sahənin adları və onların yeni dəyərləri;
  • Değişiklik üçün satır seçmək üçün şərtlər.

Məsələn nümunə götürək. ID = 106 olan bir məhsul dəyəri dəyişdirdiyini söyləyək, bu xəttin yenilənməsi lazımdır. Aşağıdakı ifadəni yazın:

BU GÜNÜN ƏMƏKDAŞLIĞI commodity_price = '3.2' WHERE commodity_id = '106'

Cədvəlin adını, bizim vəziyyətimizdə yeniləmənin edildiyi Əmtəə, SET-dən sonra, sütunun yeni dəyəri və WHERE bəndində istənilən şəxsiyyəti göstərən istənilən qeydləri tapdıqdan sonra göstərdik.

SET ifadəsindən sonra birdən çox sütun dəyişdirmək üçün virgülle ayrılmış bir neçə sütun dəyərli cütləri göstərin. Bir məhsulun adı və qiymətinin yeniləndiyi bir nümunəyə baxırıq:

ƏLAVƏ OLUNUB Əmtəə SET commodity_name = 'Fanta', commodity_price = '3.2' WHERE commodity_id = '106'

Sütundakı məlumatı silmək üçün, masa quruluşu bunu təmin edərsə, onu NULL olaraq təyin edə bilərsiniz. Xatırlanmaq lazımdır ki, NULL tam "yox" dəyərdir və mətn və ya rəqəm şəklində sıfır deyil. Məhsulun təsviri silin:

ƏLAVƏ OLUNUB Əmtəə SET commodity_desc = NULL WHERE commodity_id = '106'

Satırların silinməsi

Sütundakı sətirləri silmək üçün SQL sorğuları DELETE ifadəsi ilə həyata keçirilir. İki istifadə var:

  • Cədvəldə müəyyən satırlar silinir;
  • Masanındakı bütün satırlar silinir.

Bir sətirdən bir sıra silmək nümunəsi:

Əmtəə nişanından silin commodity_id = '106'

DELETE FROM'dan sonra satır silinəcək olan cədvəlin adını qeyd edin. WHERE bəndində silinəcək satırları seçmək üçün bir şərt var. Məsələn, maddə satırını ID = 106 ilə silinirik. Hər yerdə WHERE göstərmək çox vacibdir. Bu operatoru atlayaraq, masanın bütün satırlarının çıxarılmasına səbəb olacaq. Bu da sahələrin dəyərinin dəyişdirilməsi üçün də tətbiq olunur.

DELETE bəyanatında sütun adları və metakarakteriyalar göstərilmir. Xəttləri tamamilə aradan qaldırır və bir sütunu silə bilməz.

SQL-də Access istifadə

Microsoft Access , veritabanında verileri idarə etmək, dəyişdirmək, təhlil etmək və məlumatların təhlilini aparmaq və süt ifadələrini dərhal yerinə yetirmək üçün istifadə edərək, rahat interaktiv Sorgu Dizaynı vasitəsi ilə SQL sorgularını tətbiq etmək üçün masalar, məlumat bazaları yaratmaq üçün interaktiv rejimdə istifadə edilir Hər hansı bir mürəkkəblik.

Həmçinin, Access verilənlər bazası hər hansı bir ODBC məlumat mənbəyinə SQL sorgu generatoru kimi istifadə edilə bilən server giriş rejimi dəstəklənir. Bu xüsusiyyət, Access proqramlarının hər hansı bir format verilənlər bazası ilə qarşılıqlı əlaqə yaratmasına imkan verir.

SQL Extensions

SQL sorğuları loops, branchings, və s. Kimi prosessual proqramlaşdırma dillərinin bütün imkanlarına malik olmadığı üçün, DBMS satıcıları qabaqcıl bacarıqları olan SQL-in öz versiyasını inkişaf etdirirlər. Əvvəla, bu saxlanılan prosedurlar və standart prosessual dil operatorları üçün dəstəkdir.

Dilin ən ümumi dialektləri:

  • Oracle Database - PL / SQL
  • Interbase, Firebird - PSQL
  • Microsoft SQL Server - Transact-SQL
  • PostgreSQL - PL / pgSQL.

İnternetdə SQL

MySQL verilənlər bazası GNU General Public License lisenziyası əsasında yayımlanır. Xüsusi modulların inkişaf etdirilməsi imkanı ilə kommersiya lisenziyası mövcuddur. XAMPP, WAMP və LAMP kimi İnternet serverlərinin ən populyar iclaslarının tərkib hissəsi kimi və internetdə tətbiqlərin inkişafı üçün ən populyar məlumat bazasıdır.

Sun Microsystems tərəfindən hazırlanmış və hazırda Oracle tərəfindən dəstəklənir. Bu, 64 terabayt olan verilənlər bazasını, SQL standart sintaksisini dəstəkləyir: 2003, verilənlər bazalarının və bulud xidmətlərinin təkrarlanması.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 az.delachieve.com. Theme powered by WordPress.