Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ответы базы данных.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
103.34 Кб
Скачать
  1. Агрегаттық функциялар.

  2. Group by сөйлемі. Having сөйлемі. Order by сөйлемі.

GROUP BY толықтай өріс мәні арқылы табылатын агрегаттық функцияның барлық сериясы қолданылады. Бұл кезде, әрбір топтағы барлық жол сол snum өріс мәнінен тұрады, және MAX функциясы әрбір топқа жекелей қолданылады. Бұл GROUP BY қолданылатын өріс мәні, ол еңгізу тобында бір ғана мән қабылдайды, агрегаттық функцияға ұқсас. Нәтижесінде агрегат пен өрістерді біріктіреді.Сол сияқты көпсандық GROUP BY өрісін қолдануға болады. Мысалы, егер сіз әрбір сатушының күніне алатын жалақысын есептеу керек болсын. Ол үшін сіз сатушының әр күнде алатын жалақысын біріктіріп, осылардың әрбіріне MAX функциясын қолданамыз.(төмендегідей):

SELECT snum, odate, MAX ((amt)) FROM Orders GROUP BY snum, odate;

Айталық, алдыңғы мысалда, сіз $3000.00 аспайтын максималды сумманы алдық . Сіз агрегаттық функцияны WHERE қосымшасында қолдана алмаймыз ( егер сіз келесі сұранысты қолдансаңыз), өйткені предикаттар бір жолдық терминде бағаланады, агрегаттық функция жолдық топ терминімен бағаланады. Бұл дегеніміз сіз төмендегіге ештеңе істей алмайсыз:SELECT snum, odate, MAX (amt) FROM Oreders WHERE MAX ((amt)) > 3000.00

GROUP BY snum, odate;

Бұл қолайсыз интерпретация ANSI-дан ауытқу болы табылады. $3000.00 асқан максималдық бағасын көру үшін, сіз HAVING қосымшасын қолданамыз.

HAVING қосымшасы қолданылатын енгізілген топты жою үшін критерииді қолданады.

HAVING сөйлеміндегі аргументтер GROUP BY командасында қолданылатын SELECT сөйлеміндегі ережелермен бағынады.Олар шығару тобына бір мағына беру керек.Келесі командаға тыйым салынады.

ORDER BY сонымен қатар GROUP BY-мен бірге топтарды реттеу үшін қолданыла алады. Егер де солай болса, ORDER BY әрдайым соңғы болып келеді. Міне, соңғы тараудан алынған ORDER BY ұсынысымен толықтырылған мысал. Нәтиже топтастырылудан бұрын топтардың реті еркін болды; енді біз топтарды бір тізбекпен орналастырамыз:

SELECT snum, odate, MAX (amt) FROM Orders

GROUP BY snum, odate GROUP BY snum;

ORDER BY мүмкіндігінің негізгі мақсаттарының бірі – сізге GROUP BY-ды нәтиже бағандарымен, сонымен бірге кесте бағандарымен бірге қолдануға мүмкіндік беру. Агрегатты функция, тұрақтылар немесе өрнектер көмегімен құрылған бағандар SELECT ұсынысының сұранысында GROUP BY-мен бірге қолдануға абсолютті түрде жарамды. Мысалы, 7.8 суретте көрсетілгендей біздің әрбір сатушымыздың ретін санайық және нәтижесін кемімелі ретпен көрсетейік:

SELECT snum, COUNT ( DISTINCT onum ) FROM Orders

GROUP BY snum ORDER BY 2 DESC;

  1. Бір-біріне салынған сұраныс. Бір-біріне салынған сұраныстың нәтижесімен салыстыру. Жату-жатпауды тексеру. Бар-жоғын тексеру. Бейнелеу.

  1. INSERT. DELETE. UPDATE.

кіргізу

INSERT <1 кестеден таңдау> INTO <2 кестеге қосу>

2 кестеге 1 кестеден таңдап алынған кортеждерді қосу;

INSERT(имя_поля)-көрсетілген кестенің қандай да бір өрісіне мәліметтерді қосуды орындауға рұқсат береді;

жаңарту

UPDATE <бастапқы кестеден таңдау><элементтер тізімі>

таңдап алынған кортеждер үшін көрсетілген элементтердің атрибут:=өрнек түріндегі мәндерін өзгертулер орындалады;

жою

DELETE <бастапқы кестеден таңдау>

бастапқы кестеден таңдап алынған кортеждерді жою орындалады.

Сонымен, реляциялық алгебра дегеніміз – бұл реляциялық кестелерді өңдеудің процедуралық тілі, басқаша айтқанда реляциялық алгебра есептің қадамдық шешімін қамтамасыз етеді.

  1. CREATE TABLE. DROP TABLE. ALTER TABLE.

CREATE TABLE операторы.

Кестені құру үшін CREATE TABLE операторы пайдаланылады. Бұл оператордың синтаксисі келесі түрде болады:

CREATE TABLE имя_таблицы (

Имя_поля_1 тип_данных.

Имя_поля_2 тип_данных.

имя_поля_N тип_данных)

Мысал, ФИЗИЧЕСКИЕ ЛИЦА кестесін құру операторы мына түрде болады:

CREATE TABLE STUDENTS

SNUM INTEGER.

SIMA CHAR (25).

SFAM CHAR (25).

SOTCH CHAR (25).

SROZH DATE.

SADR CHAR (25).

STEL VARCHAR (25).

ALTER TRABLE операторы.

Құрылған кестені ALTER TABLE операторын пайдаланып түрлендірге болады. Осы оператор көмегімен кестеге жаңа өрістерді қосуға және жоюға, өрістер мәліметтерінің типін өзгертуге, шектеулерді қосып немесе жоюға болады.

Жалпы түрде ALTER TABLE операторының синтаксисі былай болады:

ALTER TABLE имя_таблицы [MODIFY][имя_поля тип_данных]

[ADD][имя_поля тип_данных]

[DROP][имя_поля тип_данных]

ALTER TABLE операторымен орындалатын әрекет кесте атынан кейін көрсетіоіп негізгі сөзбен анықталады:

  • MODIFY- өріс анықтамасын береді;

  • ADD- кесмтеге жаңа өріс қосады;

  • DROP-кестеден өрісті жояды.

Өрістің мәліметтерінің типін өзгерту үшін ALTER TABLE операторының келесі синтаксисі пайдаланылады:

ALTER TABLE имя_таблицы ADD (имя_поля тип_данных)

Мысалы,STUDENTS кестесінестуденттің электронды почтасынан тұратын өрісті қосу үшін келесі операторды пайдаланған жөн:

ALTER TABLE STUDENTS ADD (E-mail CHARACTER (25))

Егер бар өрістің мәліметтерінің типін өзгерту қажет болса, ALTER TABLE операторымен бірге MODIFY негізгі сөзін пайдаланған жөн:

ALTER TABLE имя_таблицы MODIFY(имя_поля тип_данных)

Мысалы, STUDENTS кестесіне E-mail өрісін енгізгеннен кейін CHARACTER типінің пайдаланылуының тиімсіздігі анықталады-студенттердің көбінде электронды почта жоқ, сондықтан дискілік кеңістіктің бөлігі пайдаланылмай, бос қалады. Бұл өріс үшін VARCHAR мәліметтер типін қолданған дұрыс. Мәліметтер типін өзгерту үшін ALTER TABLE операторын пайдаланамыз:

ALTER TABLE STUDENTS MODIFY(E-mail VARCHAR(25))

Бар өрісті өшіру үшін ALTER TABLE операторын DROP негізгі сөзбен бірге шақыруды орындаумен жүзеге асырылады:

ALTER TABLE имя_таблицы DROP (имя_поля)

DROP TABLE операторы.

Кестелерді жою үшін DROP TABLE операторы пайдаланылады. Бұл оператордың синтаксисі мына түрде болады:

DROP TABLE имя_таблицы [RESTRICT |CASCADE]

Егер DROP TABLE операторын шақыру кезінде RESTRICT негізгі сөзі пайдаланылып, және жойылатын кестеге қандай да бір ұсыныс немесе шектеу сілтелінсе, онда кестені жою операторы орындалуы кезінде қате туралы хабарлама шығарылады (генерацияланады). Егер де CASCADE негізгі сөзін пайдаланса, онда кестені жою орындалады және кестемен бірге оған сілтелінетін ұсыныстар мен шектеулер де жойылады.