«Экономикалық ақпараттық жүйелердегі бағдарламалық жабдықтау» 1-деңгей


Агрегаттық функциялар және сұраулар нәтижелері



бет16/20
Дата15.03.2024
өлшемі170.17 Kb.
#495648
түріБағдарламасы
1   ...   12   13   14   15   16   17   18   19   20
Экономика ответтеры

Агрегаттық функциялар және сұраулар нәтижелері:
(SQL/89 стандартында олар жиындардан тұратын функциялар деп аталады) SQL / 89 келесі синтаксистік ережелермен анықталады:


:: =
COUNT (*) |
|
: =
{ AVG / MAX / MIN | SUM / COUNT }

(DISTNICT )


:: =
{ AVG / MAX / MIN / SUM} ([ALL] )

Осы ережелерден көрініп тұрғандай, SQL / 89 стандартында бес стандартты агрегаттық функциялар анықталған: COUNT - жолдар немесе мәндер саны, MAX - максимал мән, MIN - минимал мән, SUM - жиынтық мән және AVG - орташа мән.


58. Агрегаттық функциялардың семантикасын жіктеңіз.


Агрегаттық функциялар берілген көптеген жолдар үшін кейбір мәнді есептеуге арналған. Егер агрегаттық функция топтастырылған кестеге немесе бүкіл кестеге қолданылса, жолдар жиыны болуы мүмкін. Барлық агрегаттық функциялар үшін, COUNT (*) басқа, нақты (яғни семантикамен талап етілетін) есептеу тәртібі келесі: агрегаттық функцияның параметрлерінің негізінде берілген жолдардан алынған мәндер тізімі жүргізіледі. Содан кейін осы тізім бойынша функцияны есептеп шығарады. Егер тізім бос болса, онда COUNT функциясының мәні 0, ал қалған барлық функциялардың мәні-null.

T осы тізімдегі мәндердің түрін белгілесін. Сонда COUNT функциясын есептеу нәтижесі-іске асыруда анықталатын масштабты және дәлдікті нақты Сан. SUM және AVG функцияларын есептеу кезінде T типі символдық жолдардың типі болмауы тиіс, ал функцияның нәтиже түрі - егер T-дәл сандардың типі болса, масштабты және дәлдікті іске асыруда анықталатын нақты сандардың типі, егер T - болжамды сандардың типі болса.


COUNT (*) функциясын есептеу берілген жиындағы жолдар санын есептеу арқылы жүргізіледі. Барлық жолдар, тіпті егер олар барлық жолдарда null мәні бар бір бағаннан тұрса да әр түрлі болып саналады.

Егер агрегаттық функция DISTINCT кілт сөзімен сипатталса, онда мәндер тізімі көрсетілген баған мәндерінен құрылады. (Бұл жағдайда арифметикалық өрнектерді есептеуге жол берілмейтінін атап өтеміз!) Бұдан әрі осы тізімнен белгісіз мәндер жойылады және онда дубликат-мәндер жойылады. Содан кейін көрсетілген функция есептеледі.


Егер агрегаттық функция DISTINCT (немесе кілт сөз ALL) кілт сөзінсіз ерекшеленген болса, онда мәндер тізімі берілген жиындардың әрбір жолы үшін есептелетін арифметикалық өрнектің мәндерінен қалыптасады. Одан әрі тізімнен белгісіз мәндер жойылады және агрегаттық функцияны есептеу жүргізіледі. Бұл жағдайда COUNT функциясын қолдануға жол берілмейтініне назар аударыңыз! Ескерту: алдыңғы екі абзацта көрсетілген екі шектеулер де қағидаттылықтан артық Техникалық болып табылады және нақты іске асыруда болмауы мүмкін. Дегенмен, бұл SQL / 89 стандартының шектеулері және оларды мобильді бағдарламалау кезінде ұстану қажет.


59. Сұрау нәтижелерін түсіндіріңіз.


Агрегаттық функциялар болады ақылға қонымды пайдалану ерекшелікте курсор операторы таңдау және подзапросе кейін түйінді сөздер SELECT (біз қоңырау бұл бөлімде барлық осындай құрылымдар тізіммен таңдау, ұмытып емес, бұл жағдайда подзапроса бұл тізім тек бір элемент), және болған жағдайда, таңдауды бөлімнің HAVING. Стандарт қосалқы өрісте агрегаттық функцияларды (сыртқы сұранымның кортеждері тобындағы агрегаттық функция) экзотикалық пайдалануға жол береді, бірақ іс жүзінде олар өте сирек кездеседі. Кесте өрнегінің түріне байланысты таңдау тізімінде агрегаттық функцияларды қолданудың әр түрлі жағдайларын қарастырайық. Егер R кестелік өрнегінің нәтижесі топтастырылған кесте болып табылмаса, онда таңдау тізіміндегі R көптеген жолдарынан кем дегенде бір агрегаттық функцияның пайда болуы R жоқ топтау бағаналары бар бір (немесе нөлден) топтастырылған кесте ретінде айқындалуына әкеледі. Сондықтан бұл жағдайда іріктеме тізімінде R жолдарының ерекшеліктерін тікелей пайдалануға жол берілмейді: олардың барлығы агрегаттық функциялардың ерекшеліктерінің ішінде болуы тиіс. R топтастырылған кестені білдіретін, бірақ кестелік өрнекте GROUP BY бөлімі жоқ (және, демек, HAVING бөлімі бар) жағдайда мәселе ұқсас болады. Егер алдыңғы абзацтың жағдайында іріктеме тізімін қалыптастырудың екі нұсқасы болса: тек R бағандарын тікелей көрсете отырып немесе тек олардың ішінде агрегаттық функцияларды көрсете отырып, онда бұл жағдайда тек екінші нұсқа болуы мүмкін. Кестелік өрнектің нәтижесі бір топтан тұратын топтастырылған кестемен анық жарияланды және сұрау нәтижесін осы жол тобына агрегаттық функцияларды қолдану арқылы ғана қалыптастыруға болады. Тағы да сұрау нәтижесі-r-ге агрегаттық функцияларды қолдану арқылы алынған бір жолдан аспайтын кесте болып табылады.

Соңында, R" нақты " топталған кестені білдіретін жағдайды қарастырайық, яғни кестелік өрнек GROUP BY бөлімін қамтиды және, демек, кем дегенде бір топтау бағанын анықтайды. Бұл жағдайда таңдау тізімін қалыптастыру ережелері HAVING бөлімін таңдау шарттарын қалыптастыру ережелеріне толық сәйкес келеді: топтау бағаналарының спецификациясын тікелей қолдануға жол береді, ал қалған R бағаналарының спецификациялары тек агрегаттық функциялардың спецификацияларының ішінде ғана пайда болуы мүмкін. Сұраныс нәтижесі кесте болып табылады, онда жолдар саны R-дегі топтар санына тең және әрбір жол осы топ үшін топтау бағандары мен агрегаттық функциялар мәндерінің негізінде қалыптасады.


60. Есептерді жасауды сипаттаңыз.


Есеп-экранға, баспаға немесе файлға шығатын пішімделген деректер көрінісі.
Олар базадан қажетті мәліметтерді алуға және оларды қабылдауға ыңғайлы түрде ұсынуға мүмкіндік береді,сондай-ақ деректерді жинақтау және талдау үшін кең мүмкіндіктер береді.
Кестелерді және сұрауларды басып шығарған кезде ақпарат іс жүзінде сақталатын түрде беріледі. Жиі деректерді дәстүрлі түрі бар және оңай оқылатын есептер түрінде ұсыну қажеттілігі туындайды. Толық есеп кестеден немесе сұраныстан алынған барлық ақпаратты қамтиды, бірақ тақырыптарды қамтиды және жоғарғы және төменгі колонтитулдарды көрсете отырып, беттерге бөлінеді.

61. TquickRep компонентінің қасиеттері мен оқиғаларын атаңыз.


Жоғарыда айтылғандай, tquickrep компоненті есепті құру үшін орталық болып табылады, сондықтан осы қадамда біз оның маңызды қасиеттерін, әдістері мен оқиғаларын тізімдейміз.
Есепке құрамдас бөліктердің жекелеген түрлерін қосуды анықтайтын көптеген логикалық мәндерден (False/True) тұрады:
HasColumnHeader-есеп бағанының тақырыбы;
HasDetail-толық ақпарат;
HasPageFooter-жертөле беттер;
HasPageHeader-бет тақырыбы;
HasSummary-жертөле туралы есеп;
Has Title-есеп тақырыбы.
Бұл қасиеттер есепке белгілі бір жолақтарды енгізген кезде автоматты түрде қалыптасады

62. Конструктор режиміндегі есептің құрылымын анықтаңыз.


Microsoft Access есепте сұрау немесе кесте деректерін көрсетеді, оларға қабылдауды жеңілдететін мәтіндік элементтерді қосады.
Мұндай элементтердің қатарына жатады:

* Тақырып. Бұл бөлім есептің бірінші бетінің жоғарғы жағында ғана басылады. Есеп тақырыбының мәтіні, күні немесе есеп басында бір рет басылатын құжат мәтінінің айқындаушы бөлігі сияқты деректерді шығару үшін пайдаланылады. Есеп тақырыбының аймағын қосу немесе жою үшін мәзірден есептің тақырып/ескерту пәрменін таңдау қажет.


* Жоғарғы колонтитул. Есептің әр бетінде басылатын бағандардың тақырыптары, парақтардың күні немесе нөмірі сияқты деректерді шығару үшін пайдаланылады. Жоғарғы деректемені қосу немесе жою үшін мәзірден колонтитул командасын таңдау керек. Microsoft Access бір уақытта жоғарғы және төменгі деректемелерді қосады. Колонтитулдардың бірін жасыру үшін, оның қасиеттері үшін биіктік 0 мәнін көрсету керек.


* Беттің жоғарғы және төменгі деректемелерінің арасында орналасқан деректер аймағы. Есептің негізгі мәтіні бар. Бұл бөлімде есеп негізделген кесте немесе сұрау жазбаларының әрқайсысы үшін басып шығарылатын деректер көрсетіледі. Осы басқару элементтерін орналастыру үшін өрістер тізімі мен элементтер тақтасы қолданылады. Деректер аймағын жасыру үшін биіктік 0 мәнін көрсету керек.


* Төменгі колонтитул. Бұл бөлім әр беттің төменгі жағында пайда болады. Есептің әрбір бетінде төменнен басылатын қорытынды мәндер, күні немесе бет нөмірі сияқты деректерді шығару үшін пайдаланылады.


63. Additional панелінің кейбір компоненттерін көрсетіңіз.


64.Есептің негізгі компоненттері: TQRBand, TQRLabel,TQRMemo.
65. Есептің негізгі компоненттері: TQRShape, TQRImage,TQRSubDetail .
66. Сұраныстар құру. TQuery компонентін айтыңыз.
Tquery
TQuery компоненті TTable компоненті сияқты TDataSet компонентінің барлық қасиеттеріне ие.

TTable компоненті сияқты TDataSource компоненті Data Controls компоненті мен TQuery компоненті арасындағы өзара әрекеттесуді басқарады. Әдетте app әр tquery компоненті үшін бір DataSource компоненті бар.


Ең жиі TQuery компонентінің келесі қасиеттері қолданылады:

• Active - бұл сұраудың ашық (true) немесе жабық (false) екенін көрсетеді


* Eof, Bof-бұл сипаттар ағымдағы жазба көрсеткіші сұрауды орындау нәтижесі болып табылатын деректер жиынтығының соңғы немесе бірінші жолында орналасқан кезде true мәнін қабылдайды.


* DatabaseName-сұраныс жүзеге асырылатын қашықтағы ДБ каталог немесе бүркеншік аты (alias) •


* DataSource-параметрленген сұраулар үшін деректер көзін көрсетеді(яғни мәні алдын ала белгісіз параметрлермен сұраулар).


* Fields-бұл сипат тек орындау кезінде ғана қол жетімді (run-time only) және реттік нөмір бойынша анықталатын өрісті оқу немесе түрлендіру үшін қолданылады.


* Params-Келесі мысалда SomeNo сияқты параметрленген сұрау параметрлері бар: Select * from Orders where CustNo= • SomeNo


• SQL-SQL сұрау операторының мәтінін қамтитын жол жиегі.


SQL (Structured Query Language) сұраныстарының тілі серверлік ДББЖ-мен жұмыс кезінде дәстүрлі қолданылатын dBase және Paradox форматындағы кестелермен жұмыс кезінде де қолданылуы мүмкін. Осы тілдің синтаксисінің толық сипаттамасына түспестен (онымен басқа дереккөздерде танысуға болады, мысалы, М. Грабердің "SQL-ге кіріспе" кітабында), оның бір ерекшелігін атап өтуге болады. SQL-нецедурный тілі. Онда сұрау салу нәтижесінде не алу керек деп жазуға болады, бірақ мұны қалай жазуға болмайды, яғни сұрау салуды орындау рәсімін өзі сипаттауға болмайды. Сонымен қатар, SQL-дің белгілі бір операторларын жүзеге асыру әртүрлі болуы мүмкін, және көптеген жағдайларда++ Builder көмегімен жасалатын клиенттік қосымшаларды қызықтырмайды. DBase немесе Paradox кестелері жағдайында SQL жүзеге асыруды Borland Database Engine кітапханасы өзіне алады.


1. TQuery компоненті экранда көрсетуге, кірістіруге, жоюға және өңдеуге болатын деректер жиынтығын анықтау немесе жасау үшін SQL операторларын пайдалануға мүмкіндік береді.




67. SQL тілі.Select, INSERT операторларын сипаттаңыз.


SQL тілінің ағымдағы нұсқасы 1992 жылы қабылданған (стандарттың ресми атауы - SQL (1992) деректер қоры тілінің халықаралық стандарты (International Standart Database Language SQL), ресми емес атауы - SQL/92, немесе SQL-92, немесе SQL92). Стандартты сипаттайтын құжат 600 беттен артық болады. Біз тілдің кейбір түсініктерін ғана береміз.
SQL тілі деректер қорына қол жеткізудің стандартты тіліне айналды. "Реляциялық" атауына үміткер барлық ДҚБЖ SQL диалектісін жүзеге асырады. Көптеген іске асырмайтын жүйелердің қазіргі уақытта реляциялық деректерге қол жеткізу құралдары бар. Стандарттаудың мақсаты әр түрлі ДҚБЖ арасында қосымшалардың төзімділігі болып табылады. Қазіргі уақытта бір де бір жүйе SQL стандартын толық көлемде іске асырмайды. Сонымен қатар, тілдің барлық диалектілерінде стандартты емес мүмкіндіктер бар. Осылайша, әрбір диалект-бұл SQL стандартының кейбір ішкі жиыны. Бұл бір ДҚБЖ үшін әзірленген қосымшаларды басқа ДҚБЖ-ға көшіруді қиындатады.
SQL тілі реляциялық теорияның терминдерінен өзгеше терминдермен жұмыс істейді, мысалы, "қатынастар" орнына "кестелер", "кортеждер" орнына "жолдар", "атрибуттар" орнына "бағандар" немесе "бағандар"қолданылады. SQL тілінің стандарты, бірақ реляциялық теорияға негізделген, бірақ көптеген жерлерде ол кетеді. Мысалы, деректердің реляциялық моделіне қатынасы бірдей кортеждердің болуына жол бермейді, ал SQL терминологиясындағы кестелер бірдей жолдар болуы мүмкін. Басқа да айырмашылықтар бар. SQL тілі шынайы толық. Бұл дегеніміз, реляциялық алгебраның кез келген операторы тиісті SQL операторымен білдірілуі мүмкін.

Іздеу (SELECT): Бұл операция деректерді таңдау және көрсету үшін пайдаланылады. Оны оқырман деректерді берілген критерийлерге сәйкес іздеу жүйесінің арқылы пайдаланыңыз.


Мысалы:

  • Жасыл бөлімдегі бар студенттерді таңдау

SELECT * FROM Students WHERE Department = 'Жасыл’;

  • Жасыл бөлімдегі курстарды таңдау

SELECT * FROM Courses WHERE Department = 'Жасыл';
INSERT
Бұл операция деректер жиынтығына жаңа жазба (жолдама) қосуға пайдаланылады. Оқырман деректер таблицасына жаңа мәліметтерді енгізу үшін пайдаланылады.
Мысалы:

INSERT INTO Students (StudentID, FirstName, LastName, DateOfBirth, Gender)VALUES (2, 'Жандос', 'Смайыл', '2001-08-20', 'ер’);

  • Жаңа курс қосу

INSERT INTO Courses (CourseID, CourseName, Department)VALUES (101, 'Математика 101', 'Математика');

68. UPDATÅ, DELETE, CREATE TABLE операторларын түсіндіріңіз.


Түзету (UPDATE): Бұл операция деректерді жаңартуға пайдаланылады. Олардың біреуін немесе бірнешеін таңдау арқылы деректерді жаңартуға мүмкіндік береді.
Мысалы:

  • Студенттың атын өзгерту

UPDATE StudentsSET FirstName = 'Айгүл'WHERE StudentID = 2;

UPDATE CoursesSET CourseName = 'Математика 102'WHERE CourseID = 101;
Сұрыптау (DELETE): Бұл операция деректерді жою үшін пайдаланылады. Оны оқырман деректерді берілген критерийлерге сәйкес жою жүйесінің арқылы пайдаланыңыз.
Мысалы:

  • Студентті жою

DELETE FROM Students WHERE StudentID = 2;

  • Курсты жою

DELETE FROM Courses WHERE CourseID = 101;
CREATE TABLE - кесте жасау
69. TBrush класын сипаттаңыз.


Достарыңызбен бөлісу:
1   ...   12   13   14   15   16   17   18   19   20




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет