Сұрауларды құрудың қандай әдістерін білесіз? Сұраныстарды құру (қалыптастыру).

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

Ал, тапсырма орындауды талап ететіндіктен, орындайық!

Бұны қалай істейді

Есепте екі өріс көрсетілетінін дереу ескертейік: «Сілтеме» және «Өтті». Барлық құжаттарда осы стандартты мәліметтер бар. Біз «Метадеректер.Құжаттар» метадеректер жинағын айналып өтіп, барлық құжаттарды бағдарламалық жолмен алуға сұраныс жасаймыз. Жинақтың әрбір элементі үшін біз «Сілтеме» және «Жарияланған» мәліметтерін пайдаланып оның кестесіне сұраныс жасаймыз, содан кейін оның нәтижесін басқа құжатқа ұқсас сұрау нәтижесімен біріктіреміз.

" ТАҢДАУ | Құжат . Сілтеме AS сілтемесі,| Док . Өткізілді AS Өткізілді |FROM| Құжат . ABCCclassificationBuyers AS Doc. Сілтеме AS сілтемесі,| Док . Өткізілді AS Өткізілді |FROM| Құжат . AdvanceReport AS Doc|. БАРЛЫҒЫН ТАҢДАУ | Док . Сілтеме AS сілтемесі,| Док . Өткізілді AS Өткізілді |FROM| Құжат . Аударылған аккредитив AS Doc|. БАРЛЫҒЫН БІРІКТІРУ | . . . "

Барлық құжаттарда бар барлық мәліметтерді көрсету қажет болған жағдайда, сұрауды бағдарламалық түрде жасау әлдеқайда күрделі болып көрінеді. Мысалды қиындатпау үшін біз тек аталған стандартты мәліметтерді көрсетеміз.

Есеп нәтижесін құрастыру кезінде жасалған сұранысты негізгі деректер жиынына орналастыру қажет болады. Есепті бағдарламалық түрде жасау кезіндегі қалған әрекеттер стандартты болады.

Іске асыру

Енді, ретімен. Сыртқы есепті жасағаннан кейін біз оған деректер құрамының схемасын қосамыз. Деректер жиынына сұрау ретінде келесі сұрауды қосамыз:

Жалпы алғанда, біздің жағдайда деректер жиыны үшін қандай сұраныс болатыны маңызды емес. Біз оны тек конструктордағы есеп құрылымын теңшеуге ыңғайлы ету үшін қостық, әйтпесе «Параметрлер» қойындысында өрістер болмас еді. Есеп құрылымының соңғы орнатуы келесідей:

Енді «Нәтижені құрастыру кезінде» оқиға өңдегішінде стандартты өңдеуді өшіреміз және есепті бағдарламалы түрде жасаймыз. Қол жеткізуді басқару жүйесі туралы есепті құруға арналған бағдарлама коды келесі тізімде ұсынылған:

Нәтижені құрастыру кезіндегі процедура (DocumentResult, Шифрды шешу деректері, StandardProcessing) StandardProcessing = False ; // стандартты есеп шығаруды өшіру - біз оны бағдарламалық түрде шығарамызПараметрлер = SettingsComposer. Параметрлер; // Есеп параметрлерін алу DecryptionData = newDataCompositionDecryptionData; // Шифрды шешу деректерін жасау LayoutLinker = newDataLayoutLayoutLinker; // Макет құрастырушысын жасаңыз // Деректер орналасу схемасын пайдаланып орналасу орналасуын инициализациялаңыз // және бұрын жасалған параметрлер мен шифрды шешу деректері" ); Layout Layout = Layout Linker. // Нәтижені құрастыру CompositionProcessor = newDataCompositionProcessor; Процессордың орналасуы. Initialize(LayoutLayout, , DecryptionData); DocumentResult. Clear(); // Нәтижені электрондық кесте құжатына шығару OutputProcessor = Жаңа OutputProcessorDataCompositionResultInTabularDocument; Шығару процессоры. SetDocument(DocumentResult); Шығару процессоры. Шығыс (LayoutProcessor); Процедураның соңы

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

// .................................................................. DataLayoutScheme = GetLayout(" MainData орналасу схемасы" ) ; // Деректердің орналасу схемасын алыңызДеректер композициясының схемасы. Деректер жиындары. Деректер жинағы1. Сұраныс = " " ; // Деректер жиынындағы сұрауды өшіріңіз DocumentsConfigurations = Метадеректер. Құжаттама; // Құжат метадеректерінің жинағын алыңызҚұжаттардың саны = ConfigurationDocuments. Quantity(); // Конфигурациядағы құжаттардың жалпы санын анықтауСч = 1; RequestText = " " ; Әрбір құжат үшін DocumentsConfiguration циклінің сұрау мәтіні = сұрау мәтіні + // Әрбір құжат үшін оның кестесіне сұраныс мәтінін қалыптастырамыз" ТАҢДАУ | Құжат . Сілтеме AS сілтемесі,| Док . Өткізілді AS Өткізілді |FROM| Құжат . " + Құжат атауы + " AS Doc " ; // Тек сұрау мәтініне метадеректер тармағындағы құжат кестесінің атын ғана ауыстыру керекҚұжаттардың шот нөмірі болса // Егер құжат жинақтағы соңғы құжат болмаса, "БАРЛЫҒЫН БІРІКТІРУ" нұсқаулығын қосыңызСұраныс мәтіні = Сұраныс мәтіні + // құжаттарға сұраныстардың нәтижелерін бір тізімге біріктіру" |БАРЛЫҒЫН БІРІКТІРУ | " ; EndIf; Sch = Sch + 1 ; EndCycle; Деректер композициясының схемасы. Деректер жиындары. Деректер жинағы1. Сұраныс = Сұраныс мәтіні; // Жаңа сұрау мәтінін деректер жиынына орналастырыңыз LayoutLayout = LayoutLocker. Орындау (Деректерді орналастыру схемасы, Параметрлер, Дешифрлеу деректері) ; // Макет құрастырыңыз // ....................................................................

Есеп тестілеуге дайын.

Нәтиже қандай?

Есепті 1С:Кәсіпорын режимінде орындайық. Есеп сәтті орындалады және біз инфобазадағы барлық құжаттардың тізімін көреміз.

Барлық орындалған әрекеттермен есепте рұқсатты басқару жүйесінің барлық стандартты мүмкіндіктері бар: декодтау, есеп құрылымын орнату, таңдаулар, шартты пішімдеу және т.б.

Барлық құжаттардың кестелеріне сұрау инфобазадағы құжаттардың толық тізімін қарау үшін ең оңтайлы шешім емес, өйткені ол салыстырмалы түрде «ауыр» ДҚБЖ сұрауын жасайды. «Құжат журналы» конфигурация нысанын пайдалану ең дұрыс болар еді, бірақ бұл мақаланың ауқымынан тыс.

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

Мысал ретінде Northwind дерекқорын пайдаланып сұраулар қалай жұмыс істейтіні туралы көбірек білгіңіз келсе, Сұрауларды түсіну мақаласын қараңыз.

Бұл мақалада

Негізгі ақпарат

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

Таңдау сұрауы - кесте көрінісінде ақпаратты көрсететін деректер қорының нысаны. Сұрау деректерді сақтамайды, бірақ кестелерде сақталған деректерді қамтиды. Сұрау бір немесе бірнеше кестелерден, басқа сұраулардан немесе екеуінің тіркесімінен деректерді көрсете алады.

Сұраулардың артықшылықтары

Сұраныс келесі тапсырмаларды орындауға мүмкіндік береді:

    Мәндерді тек сізді қызықтыратын өрістерден қараңыз. Кестені ашқан кезде барлық өрістер көрсетіледі. Олардың тек бірнешеуін қайтаратын сұрауды сақтауға болады.

    Ескерту:Сұрау тек деректерді қайтарады, бірақ оны сақтамайды. Сұрауды сақтаған кезде, байланысты деректердің көшірмесін сақтамайсыз.

    Бірнеше көздерден алынған деректерді біріктіріңіз. Кестеде әдетте онда сақталған ақпаратты ғана көруге болады. Сұрау әртүрлі көздерден өрістерді таңдауға және ақпаратты дәл қалай біріктіргіңіз келетінін көрсетуге мүмкіндік береді.

    Өрнектерді өрістер ретінде пайдаланыңыз. Мысалы, өріс күнді қайтаратын функция болуы мүмкін және пішімдеу функциясын пайдаланып сұрау нәтижелеріндегі өрістердегі мәндердің пішімін басқаруға болады.

    Сіз көрсеткен критерийлерге сәйкес келетін хабарламаларды қараңыз. Кестені ашқан кезде барлық жазбалар көрсетіледі. Олардың тек бірнешеуін қайтаратын сұрауды сақтауға болады.

Таңдалған сұрауды құрудың негізгі қадамдары

Шеберді немесе сұрау құрастырушысын пайдаланып таңдаулы сұрау жасауға болады. Кейбір элементтер шеберде қол жетімді емес, бірақ оларды кейінірек дизайнерден қосуға болады. Бұл әртүрлі әдістер болса да, негізгі қадамдар ұқсас.

    Деректер көзі ретінде пайдаланғыңыз келетін кестелерді немесе сұрауларды таңдаңыз.

    Нәтижелеріңізге қосқыңыз келетін деректер көздерінен өрістерді көрсетіңіз.

    Сондай-ақ қайтарылатын жазба сұрауларының жиынын шектейтін шарттарды орнатуға болады.

Таңдау сұрауын жасағаннан кейін нәтижелерді көру үшін оны іске қосыңыз. Таңдалған сұрауды іске қосу үшін оны деректер парағы көрінісінде ашыңыз. Сұрауды сақтағаннан кейін оны кейінірек пайдалануға болады (мысалы, пішін, есеп немесе басқа сұрау үшін деректер көзі ретінде).

Сұрау шебері арқылы таңдаулы сұрау жасаңыз

Шебер таңдау сұрауын автоматты түрде жасауға мүмкіндік береді. Шеберді пайдаланған кезде процестің барлық мәліметтерін толық басқара алмайсыз, бірақ сұрау әдетте осылай тезірек жасалады. Сонымен қатар, шебер кейде сұраудағы қарапайым қателерді анықтайды және басқа әрекетті таңдауды ұсынады.

Дайындық

Байланысты емес деректер көздерінен өрістерді пайдалансаңыз, Сұрау шебері олардың арасында қарым-қатынас жасауды ұсынады. Ол ашады қатынас терезесідегенмен, қандай да бір өзгертулер енгізсеңіз, шеберді қайта іске қосу қажет болады. Сондықтан, шеберді іске қоспас бұрын, сұрауыңыз қажет ететін барлық қатынастарды дереу жасау мағынасы бар.

Кестелер арасындағы қарым-қатынастарды құру туралы қосымша ақпаратты Кесте қатынасы нұсқаулығынан қараңыз.

Сұрау шеберін пайдалану

    Қойындыда ЖасауТопта Сұраулартүймешігін басыңыз Сұрау шебері.

    Диалогтық терезеде Жаңа сұрауэлементті таңдаңыз Қарапайым өтінішжәне түймесін басыңыз ЖАРАЙДЫ МА.

    Енді өрістерді қосыңыз. 32 кестеден немесе сұраудан 255 өріске дейін қосуға болады.

    Әрбір өріс үшін келесі екі қадамды орындаңыз:


  1. Ешбір сандық өрістерді (сандық деректерді қамтитын өрістер) қоспаған болсаңыз, 9-қадамға өтіңіз. Сандық өрісті қосқанда, сұрау мәліметтерді немесе қорытындыларды қайтаратынын таңдауыңыз керек.

    Төмендегілердің бірін орындаңыз:


  2. Диалогтық терезеде Нәтижелерқажетті өрістерді және жиынтық деректер түрлерін көрсетіңіз. Тізімде тек сандық өрістер қолжетімді болады.

    Әрбір сандық өріс үшін келесі опциялардың бірін таңдаңыз:

    1. сомасы- сұрау өрісте көрсетілген барлық мәндердің қосындысын қайтарады.

      Орт- сұрау өрістің орташа мәнін қайтарады.

      Мин- сұрау өрісте көрсетілген ең аз мәнді қайтарады.

      Макс- сұрау өрісте көрсетілген максималды мәнді қайтарады.


  3. Сұрау нәтижелерінің деректер көзіндегі жазбалар санын көрсетуін қаласаңыз, сәйкес құсбелгіні қойыңыз (деректер көзінің атауы) жазбалар санын санау.

    басыңыз ЖАРАЙДЫ МАтілқатысу терезесін жабу үшін Нәтижелер.

    Сұрауыңызға ешқандай күн мен уақыт өрістерін қоспасаңыз, 9-қадамға өтіңіз. Сұрауыңызға күн мен уақыт өрістерін қоссаңыз, Сұрау шебері күн мәндерін топтастыру жолын таңдауды ұсынады. Сұрауға сандық өрісті («Баға») және күн мен уақыт өрісін («Транзакция_уақыты»), содан кейін диалогтық терезеге қостыңыз делік. Нәтижелер"Баға" сандық өрісі үшін орташа мәнді көрсеткіңіз келетінін көрсетті. Күн мен уақыт өрісін қосқандықтан, әрбір ай, тоқсан немесе жыл сияқты әрбір бірегей күн мен уақыт мәні үшін қорытындыларды есептей аласыз.


    Күн мен уақыт мәндерін топтау үшін пайдаланғыңыз келетін кезеңді таңдап, содан кейін басыңыз Әрі қарай.

    Шебердің соңғы бетінде сұраудың атын енгізіңіз, оны ашқыңыз немесе өңдегіңіз келетінін көрсетіңіз де, түймесін басыңыз. Дайын.

    Сұрауды ашуды таңдасаңыз, ол таңдалған деректерді Деректер парағы көрінісінде көрсетеді. Сұрауды өңдеуді шешсеңіз, ол Дизайн көрінісінде ашылады.

Дизайн көрінісінде сұрау жасау

Дизайн көрінісінде таңдалған сұрауды қолмен жасауға болады. Бұл режимде сұрауды жасау процесін көбірек басқара аласыз, бірақ шеберге қарағанда қате жасау оңайырақ және көп уақытты алады.

Сұраныс жасаңыз

1-қадам: Деректер көздерін қосыңыз

Дизайн режимінде деректер көздері мен өрістер әртүрлі кезеңдерде қосылады, себебі тілқатысу терезесі көздерді қосу үшін пайдаланылады Кестені қосу. Дегенмен, қосымша көздерді кейінірек қосуға болады.

Автоматты қосылу

Егер сіз қосқан деректер көздері арасында қарым-қатынастар әлдеқашан анықталған болса, олар автоматты түрде сұрауға қосылым ретінде қосылады. Біріктірулер қатысты көздерден алынған деректерді біріктіру жолын анықтайды. Access бағдарламасы сонымен қатар, егер оларда үйлесімді деректер түрлері бар өрістер болса және олардың бірі негізгі кілт болса, екі кестенің арасында қосылуды автоматты түрде жасайды.

Access арқылы қосылған қосылымдарды теңшеуге болады. Access оған сәйкес келетін қатынас негізінде жасалатын қосылым түрін таңдайды. Access біріктіруді жасаса, бірақ ол үшін анықталған қатынасы болмаса, Access ішкі біріктіруді қосады.

Бір деректер көзін қайта пайдалану

Кейбір жағдайларда бір кестенің немесе сұраудың екі көшірмесін қосуға болады, ол өздігінен қосылу деп аталады және біріктірілген өрістерде сәйкес мәндер болса, бір кестедегі жазбаларды біріктіреді. Мысалы, сізде әрбір қызметкердің жазбасына арналған "есептер" өрісінде атының орнына менеджер идентификаторы көрсетілетін Қызметкерлер кестесі бар делік. Әрбір қызметкердің жазбасында менеджердің атын көрсету үшін өздігінен қосылуды пайдалануға болады.

Деректер көзін екінші рет қосқанда, Access екінші дананың атауын "_1" белгісімен аяқтайды. Мысалы, егер сіз Қызметкерлер кестесін қайта қоссаңыз, оның екінші данасы Қызметкерлер_1 деп аталады.

2-қадам: қатысты деректер көздерін қосыңыз

Сұрауға қосылатын деректер көздерінің бұрыннан қарым-қатынастары болса, Access бағдарламасы әрбір қатынас үшін ішкі біріктіруді автоматты түрде жасайды. Деректер тұтастығы пайдаланылса, Access сонымен қатар бір-көп қатынасы элементінің «бір» жағында қандай кесте және шексіздік таңбасын көрсету үшін біріктіру сызығының үстінде «1» көрсетеді ( ) қай кестенің «көп» жағында екенін көрсету.

Сұрауға басқа сұрауларды қосқан болсаңыз және олардың арасында қарым-қатынас жасамасаңыз, Access олардың арасында немесе қатысты емес сұраулар мен кестелер арасында автоматты түрде қосылыстар жасамайды. Деректер көздерін қосқанда Access қосылымдарды жасамаса, әдетте оларды қолмен жасау керек. Басқа көздерге қосылмаған деректер көздері сұрау нәтижелерінде ақаулық тудыруы мүмкін.

Сұрау көбірек жазбаларды қамтуы үшін біріктіру түрін ішкі біріктіруден сыртқы біріктіруге өзгертуге болады.

Байланыс қосу

Қосылымды өзгерту

Қосылымдар жасалғаннан кейін шығыс өрістерін қосуға болады: олар нәтижелерде көрсеткіңіз келетін деректерді қамтиды.

3-қадам: көрсету өрістерін қосыңыз

1-қадамда қосқан кез келген деректер көзінен өрісті оңай қосуға болады.

    Бұл әрекетті орындау үшін өрісті сұрау дизайнері терезесінің жоғарғы аймағындағы көзден жолға дейін сүйреңіз. Өріссұрау пішіні (дизайнер терезесінің төменгі жағында).

    Өрісті осылай қосқанда, Access жолды автоматты түрде толтырады Кестеөрістің деректер көзіне сәйкес конструктор кестесінде.

    Кеңес:Сұрау пішінінің Өріс жолына барлық өрістерді жылдам қосу үшін жоғарғы тақтадағы кестені немесе сұрау атын екі рет басып, ондағы барлық өрістерді таңдаңыз, содан кейін олардың барлығын бірден пішінге төмен сүйреңіз.

Өрнекті шығыс өрісі ретінде пайдалану

Сіз өрнекті есептеулер үшін шығыс өрісі ретінде немесе функцияны пайдаланып сұрау нәтижелерін жасау үшін пайдалана аласыз. Өрнектер кез келген сұрау көзінен алынған деректерді, сондай-ақ Формат немесе InStr, тұрақтылар және арифметикалық операторлар сияқты функцияларды пайдалана алады.

4-қадам: шарттарды көрсетіңіз

Бұл міндетті емес.

Шарттарды пайдалана отырып, өріс мәндері көрсетілген шарттарға сәйкес келетіндерді ғана таңдап, сұрау қайтаратын жазбалардың санын шектей аласыз.

Көрсету өрісінің шарттарын анықтау

Бірнеше өрістерге арналған шарттар

Шарттарды бірнеше өрістер үшін орнатуға болады. Бұл жағдайда жазба нәтижелерге қосылуы үшін тиісті жолдағы барлық шарттар орындалуы керек Таңдау шарттарынемесе Немесе.

Шығаруға қосылмаған өріске негізделген шарттарды орнату

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

    Сұрау кестесіне өріс қосыңыз.

    Ол үшін жолдағы құсбелгіні алып тастаңыз Көрсету.

    Шығару өрісіндегідей шарттарды орнатыңыз.

5-қадам: қорытындыларды есептеңіз

Бұл қадам міндетті емес.

Сондай-ақ, сандық деректер үшін қорытындыларды есептей аласыз. Мысалы, орташа бағаны немесе жалпы сатылымдарды көргіңіз келуі мүмкін.

Жалпы мәндерді есептеу үшін сұрау жолды пайдаланады Барлығы. Әдепкі жол Барлығыдизайн режимінде көрсетілмейді.

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

Дизайн режиміне оралу және сұрауға өзгертулер енгізу үшін түймесін басыңыз үй > Көру > Конструктор.

Өрістерді, өрнектерді немесе шарттарды теңшеңіз және ол қажетті деректерді қайтарғанша сұрауды қайта іске қосыңыз.

Access веб-бағдарламасында таңдаулы сұрау жасаңыз

Сұрау нәтижелерін шолғышта қолжетімді ету үшін кестені таңдау экранына сұрау көрінісін қосу керек. Кестені таңдау экранындағы тақырыпқа жаңа көрініс қосу үшін мына қадамдарды орындаңыз:


Microsoft корпорациясынан ол пайдаланушыларға дерекқорларды жасау және олармен жұмыс істеу үшін кең мүмкіндіктер береді. Қазіргі уақытта деректер базалары барлық салалар мен салаларда өте кең қолданылады. Жалпы, қазір оларсыз жүре алмаймыз деп айта аламыз. Осыған байланысты Access кестелерімен жұмыс істей білу өте маңызды. Қолданушының мәліметтер қорымен әрекеттесуінің негізгі элементі сұраныс болып табылады. Бұл мақалада біз Access бағдарламасында сұрауды қалай жасау керектігін егжей-тегжейлі қарастырамыз. Бастайық. Бар!

Ең алдымен, сұрау дегеніміз не екенін анықтап алайық. Бұл кестеден қажетті ақпаратты таңдау үшін қолданылатын мәліметтер қоры элементі. Олар екі түрде келеді:

  • Үлгі алу (деректерді алуға және олар бойынша операцияларды орындауға мүмкіндік береді);
  • Өзгерту үшін (мәндерді қосуға, жоюға және өзгертуге мүмкіндік береді).

Енді жаттығуға көшейік. «Жасау» қойындысына өтіп, «Сұрау салу құралы» түймесін басыңыз. Ашылған терезеде деректерді таңдағыңыз келетін бір немесе бірнеше кестені таңдаңыз. «Іске қосу» түймесін басу арқылы сіз таңдаған кестелерден барлық ақпаратты аласыз. Нақтырақ таңдау үшін «Дизайншы» қойындысына өтіп, «Таңдау шарты:» өрісіне қажетті сөзді немесе нөмірді енгізіңіз. Мысалы, сіз 1980 жылы туылған барлық қызметкерлердің тізімін алғыңыз келеді. Ол үшін «Таңдау шарты:» жолындағы «Туған күні» бағанына 1980 жылын енгізіп, «Іске қосу» түймесін басыңыз. Бағдарлама сізге бірден нәтиже береді. Ыңғайлы болу үшін жасалған сұрауды болашақта пайдалану үшін сақтауға болады. Ctrl+S пернелер тіркесімін пайдаланыңыз және тиісті өріске атауды енгізіңіз, содан кейін «OK» түймесін басыңыз.

Деректерді таңдау шартын көрсету арқылы біз қажетті үлгіні аламыз

Бағандағы мәндерді санау үшін топтық операциялар деп аталатын әрекеттерді қолдануға болады. Ол үшін «Дизайн» қойындысында «Нәтижелер» түймесін басыңыз. Пайда болған «Топтау» жолында барлық нөлдік емес мәндерді қосуға мүмкіндік беретін «Санау» функциясын таңдаңыз. Бағанның атауында «Санау» сөзінің көрсетілуін болдырмау үшін «Өріс» жолында бұрын көрсетілгеннен бұрын атауды енгізіңіз. Сақтау Ctrl+S тіркесімін пайдаланып дәл осылай орындалады.

Access бос емес ұяшықтарды санайды

Енді параметрлік сұранысты құрайық. Ол енгізілген параметр негізінде таңдау жасауға мүмкіндік береді. Мысалы, берілген күн бойынша. Қажетті дерекқорды ашқаннан кейін «[Күнді көрсету]» тиісті бағанға (тырнақшасыз) жазыңыз. Шаршы жақшалар қажет. Пайда болған терезеде қажетті күнді енгізіңіз. Осыдан кейін бағдарлама сіз енгізген күн негізінде автоматты түрде таңдау жасайды. «>» (үлкен) және «<» (меньше) чтобы отобразить элементы раньше либо позже заданной даты. Например, список сотрудников, которые сдали отчёты до 01.07.

Айқас сілтемені қалай жасауға болады? Құралдар тақтасындағы «Крест» түймесін тауып, оны басыңыз. Осыдан кейін, «Айқас кесте» элементінде бірінші ұяшықта «Жол тақырыптарын», екіншісінде «Баған тақырыптарын» және үшіншіден «Мәнді» таңдаңыз. Содан кейін жоғарыда айтылған «Санау» функциясын пайдаланып мәндерді санауға болады. Екінші ұяшықта «Баған тақырыптарының» орнына біріншідегідей «Жол тақырыптарын» көрсетсеңіз, ештеңе жұмыс істемейтінін ескеріңіз. Мұны міндетті түрде ескеріңіз.

Деректер базасында кросс-сұрау жасаймыз

Сондай-ақ кесте құруға сұраныс жасауға болады. Қалай жасалды? Сіз жұмыс істеп жатқан дерекқорларды ашыңыз, содан кейін «Таңдау шарты» ұяшығын толтырыңыз және «Кестені жасау» түймесін басыңыз. «Іске қосу» түймесін басуды ұмытпаңыз. Сіз көрсеткен параметрлер негізінде Microsoft Access жаңа кестені құрастырады. Мысалы, «Бухгалтер» мамандығы бойынша байланыс деректері көрсетілген барлық қызметкерлердің тізімі.

Сақтау кезінде жаңа кестенің атын және орнын көрсету керек

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

Дәріс 16. Құралдар көмегімен сұраныстар құру ХАНЫМҚол жеткізу 2000

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

§ бірнеше кестелерден мәліметтерді қосу;

§ тек қажетті өрістерді көрсету;

§ жазбаларды таңдаудың күрделі критерийлерін қалыптастыру;

§ бастапқы кестелердің деректерін пайдалана отырып есептеулер;

§ ақпаратты кез келген критерийлер бойынша топтастыру;

§ кестелердегі мәліметтерді өзгерту.

MS Access арнайы дайындықсыз сұраныстарды жылдам құрудың ыңғайлы механизмдерін ұсынады, ал басқа ДҚБЖ сұрауларды құру үшін жиі тілдік құралдарды білуді талап етеді. Сұрауларды құру үшін MS Access келесі құралдарды ұсынады:

§ Сұрау құрастырушы – ең аз білімді қажет ететін QBE (Query by example) көмегімен сұраныстарды құру құралы. Режимден төмен дәрі SQL.

§ Қарапайым өтініш – жиынтық сұрауларды қоса, бір немесе бірнеше кестелер негізінде сұрауларды жылдам жасауға мүмкіндік береді.

§ Айқас сұрау – кестелер тобын талдаудан алынған есептеу нәтижелері бойынша нәтижелі кестелерді құруға мүмкіндік береді;

§ Қайталанатын жазбаларды сұрау – шебер ретінде жасалған қайталанатын жазбаларды анықтауға арналған сұраныстарды құру құралы.

§ Бағыныштылары жоқ жазбалар – еншілес кестелерде бағынышты жазбалары жоқ негізгі кестедегі жазбаларды табатын сұранысты құруға мүмкіндік береді.

Сұрауларды жасау «Дерекқорлар» диалогтық терезесінде «Сұраулар» санатын таңдаудан басталады. Содан кейін «Жасау» батырмасы арқылы «Жаңа сұраныс» диалогтық терезесін шақыруға болады, онда сұраныс құру опцияларының бірі таңдалады (16.1-сурет).

16.1-сурет - Жаңа сұраныс диалогтық терезесі

Шеберді пайдаланып қарапайым сұрауларды жасаңыз

Сұраныс шебері топтастыру мүмкіндігі бар (соңғы сұраныс) бір немесе бірнеше кестелер негізінде сұрауды құруға мүмкіндік береді, бірақ таңдау шарттарын анықтамай-ақ, сондықтан ол «Қарапайым сұраныс» деп аталады.


16.2-сурет – Сұраныс құру шеберінің терезесі

Шеберді пайдаланып сұрау жасау процесі келесі қадамдарға дейін қысқарады:

§ Қарапайым сұрауларды құру шебері іске қосылады, мысалы - пәрменімен Шеберді пайдаланып сұрау жасаңыз

§ «Кестелер мен сұраныстар» ашылмалы тізімінде пайдаланушы ақпарат қажет ететін кестелер немесе сұраныстар дәйекті түрде таңдалады, содан кейін қажетті өрістер «Қолжетімді өрістер» тізімінен «Таңдалған өрістер» тізіміне жылжытылады (16.2-сурет). ).

§ Шебердің екінші қадамында сұрау түрі анықталады: егжей-тегжейлі немесе қысқаша. Егер соңғы сұрау таңдалса, онда сұрау өрістеріндегі соңғы әрекеттерді анықтау қажет:Макс, Мин, қосынды, орташа немесе санау.

§ Үшінші қадамда сұрау атын және әрекет опцияларының бірін көрсетіңіз: деректерді көру үшін сұрауды ашыңызнемесе сұрау орналасуын өзгерту, бірінші жағдайда сұрау нәтижелері экранда көрсетіледі, ал екіншісінде сұраныс дизайн режимінде ашылады.

Дизайн көрінісінде сұрау жасау

Сұрауларды жасау үшін конструктор сирек қолданылады; Сұрау құрастырушы пайдаланады QBE (Мысал бойынша сұрау) сұранысты құруға мүмкіндік беретін арнайы пішін негізінде салыстырмалы түрде күрделі сұрауларды жасауға мүмкіндік береді, бұл әдіс тілдік құрылымдарды тікелей қолданудан төмен SQL , бірақ айтарлықтай аз білімді қажет етеді.

Қажет болса, тілді пайдалануға болады SQL , ол үшін режимге ауысу керек SQL , көшу сұраныс конструкторының контекстік мәзір командасы арқылы орындалады – «Режим SQL».

Конструктор терезесі (16.3-сурет) екі бөлікке бөлінген. Жоғарғы бөлік негізінде сұраныс жасалатын кестелердің орналасуына арналған. Сұранысқа кестелерді қосу құралдар тақтасының командасы арқылы орындалады - Кестені көрсету.


16.3-сурет – Сұраныс құрастырушысының терезесі. Шартты енгізу мысалы.

Төменгі бөлік - Query Form (QBE), sБұл жерде сұраудың өзі құрастырылған. Сұранысты қалыптастыру QBE сұранысқа қатысатын кестелер мен өрістерді, шығыс параметрлерін анықтау, сұрыптау, таңдау шарттарын көрсету, есептеулер және т.б. арқылы жүзеге асырылады.

Сұранысқа жаңа өрістерді қосу кесте өрістерінің тізімдерінен (конструктордың жоғарғы бөлігі) өріс атауын жай ғана «Өріс:» жолының қажетті бағанына сүйреп апару арқылы орындалады және кесте атауы автоматты түрде анықталады.

Осы өрістің бағанындағы кез келген өріс бойынша сұрыптау қажет болса, «Сұрыптау» қасиеті мәнге орнатылады. Көтерілунемесе Төмендеу, ашылмалы тізімнен таңдау арқылы.

Жол – «Экранға шығару» сұрауды орындау нәтижесінде алынған деректердің нәтижелер жиынындағы өрістерді көрсетуді басқарады.

Кез келген өріс үшін таңдау шартын көрсетуге болады, осылайша деректерді сүзуге болады.

Сұрау өрістері сәйкес кесте өрістері үшін жиынтық сипаттарды иеленеді, бірақ өрістердің көрсету пішімін өзгертуге болады. Өрістерді көрсету пішімін өзгерту үшін контекстік мәзір пәрменін пайдаланыңыз - Қасиеттер.

Жолдар саны QBE жасалып жатқан сұрау түріне байланысты өзгеруі мүмкін, мысалы, топтауды пайдаланған кезде жаңа жол пайда болады - «Топтық операция».

Жазбаны таңдау критерийлерін орнату

Сұрауларда іріктеу критерийлерін анықтау негізгі міндеттердің бірі болып табылады. Пайдаланушыға қажетті деректер жинағын құру үшін «Таңдау шарты:» QBE жолында таңдау шарттарының мәндерін анықтау қажет. Таңдау жағдайында логикалық операторларды (немесе, және, емес), салыстыру операторлары ( <, >, <=, >=, <>, = ), сондай-ақ операторларАрасында, жылыЖәнеҰнайды.

Логикалық оператор арқылы қосылған бірнеше таңдау шарттарын орнатуға болады немесе ( немесе) , кейбір өріс үшін екі жолдың бірімен:

1. «Таңдау шарты:» жолының бір ұяшығына бүкіл шартты енгізіңіз. , логикалық операторды қолдану немесе (немесе).

2. «Таңдау шарты:» жолының ұяшығындағы шарттың бір бөлігін көрсетіңіз және «Немесе:» жолының төменгі ұяшығына шарттың екінші бөлігін енгізіңіз.

Екі нұсқа да эквивалентті болады, екінші нұсқа 16.4-суретте көрсетілген.Бұл сұраудың нәтижесі 4 немесе 5 бағасы бар оқушылардың тізімі болады.


16.4-сурет – Логикалық операторды қолдану немесе ( немесе) .

Логикалық операция Және ( және) жазба нәтиже деректер жинағына қосылмас бұрын екі шарт бір уақытта орындалуы керек кезде пайдаланылады. Мысалы, шарт >2 және<5 3 және 4 сынып оқушыларының тізімін береді.

Логикалық операцияжәнебір өріс үшін ғана емес, сонымен қатар шарттары бір уақытта орындалуы керек бірнеше өрістер үшін де қолданылуы мүмкін, алайда бұл жағдайда ол жанама түрде қолданылады. 16.5-суретте логикалық операцияның жасырын қолданылуы көрсетілгенжәне. Осындай өтініштің нәтижесінде Уфа қаласында тұратын барлық студенттерге беріледі Жәнерейтингі 5. Шын мәнінде, егер сіз кодты қарасаңыз SQL (SQL режимінде ) онда келесі шартты көруге болады:

[Студенттер].[Қала] = "Уфа" және [Оқушылар мен сыныптар].[Балл] = “5”


16.5-сурет – Логикалық операцияны қолдану мысалы Және ( және)

Операторлар ЖәнеЖәне немесебөлек және біріктіріп қолданылады. Оператормен байланысты шарттар екенін есте ұстаған жөн Жәнеоператор біріктірген шарттарға дейін орындалады немесе.

Оператор Б арасында мәндер ауқымын көрсетуге мүмкіндік береді, мысалы, 10-нан 20-ға дейінгі ауқымды келесідей анықтауға болады:

10 мен 20 арасында

Оператор I n салыстыру үшін аргумент ретінде көрсетілген мәндер тізімін пайдалануға мүмкіндік береді. Мысалы:

жылы(«бірінші екінші үшінші»)

Оператор Л сияқты мәтіндік өрістердегі үлгілерді іздеу үшін пайдалы және үлгілерді пайдалануға мүмкіндік береді:

* - символдардың кез келген санын білдіреді;

Кез келген бір таңба;

# - бұл позицияда сан болуы керек екенін көрсетеді.

Мысалы, Р әрпінен басталып, «ов» әрпімен аяқталатын фамилияны таңдау үшін келесі шартты жазуға болады:

ҰнайдыP*ss

Күн өрістерімен жұмыс істеудің ерекше тәсілі. Таңдау шарттарындағы күн мәні # таңбамен қамтылуы керек. Мысалы:

>#31.12.1996#

Белгілі бір күннің, айдың немесе жылдың уақытша оқиғаларын бөлектеу қажет болса, кірістірілген функцияларды пайдалануға болады. MS Access:

§ Күн(күні)– 1-ден 31-ге дейінгі аралықтағы ай күнінің мәнін береді;

§ Ай(күні)– 1-ден 12-ге дейінгі аралықтағы айдың мәнін береді;

§ Жыл(күні)– 100-ден 9999-ға дейінгі аралықта жыл мәнін қайтарады;

Ағымдағы күнді функция арқылы анықтауға боладыҚазір (), дәлелсіз қолданылады.

Есептелген өрістер

Таңдау сұрауларында мәндері сұрауға қатысатын өрістердегі кез келген арифметикалық амалдар нәтижесінде алынатын есептелген өрістерді анықтауға болады. Мысалы, егер сізге жалақының 15% тең сыйақы мөлшерін анықтау қажет болса, сұрау нысанының бос бағанының «Өріс» жолына келесі өрнекті жазуға болады:

Бонус: [Жалақы]*0,15

Бұл нәтиже деректер жиынының әрбір жолы үшін есептеу нәтижесін қамтитын "Қосымша төлем" деп аталатын есептелген өрісті жасайды.

Есептелген өрістер үшін өрнектерді жасау кезінде пайдалануға боладыҚұралдар тақтасындағы «Құру» батырмасы арқылы шақыруға болатын «Өрнек құрастырушы».

Терезенің жоғарғы жағында өрнекті өңдеуге болатын енгізу аймағы бар. Өрнекті қолмен енгізуге болады, бірақ әдетте енгізу аймағының астында орналасқан арифметикалық және логикалық оператор түймелері пайдаланылады. Төменгі, ортаңғы тізімде осы өрістерді өрнекте пайдалануға болатын сұрауға енгізілген өрістер тізімі бар; Өрістер тінтуірді екі рет басу немесе «Кірістіру» түймесін басу арқылы қосылады. өрнектерде қолдануға болатын сұрауға енгізілген өрістердің pi өрістері.

«КолОтп» (берілген саны) және «Цотп» (сату бағасы) өрістерін қамтитын «Қоймадан тауарды беру» сұрауы бар делік, сізге сату сомасын анықтау қажет. Сұрауды дизайн режимінде ашыңыз, бос бағанға өтіп, өрнек құрастырушысын іске қосыңыз«Құру» командасы, контекстік мәзір. Ортаңғы тізімнен «Цотп» өріс атауын тауып, оны екі рет басыңыз. «*» түймесін басып, «ColOtp» өрісі үшін бірдей әрекеттер тізбегін қайталаңыз. Қажетті өрнекті аламыз (16.6-сурет).


16.6-сурет – Өрнек құрастырушы терезесі

Жасалған өрнекті қолданбас бұрын, есептелген өрістің атауын анықтау ұсынылады, мысалы, «Қосынды»:

Сома: [COTp]*[CopTp]

«ОК» түймесін басқаннан кейін алынған нәтиже QBE пішінінің жаңа бағанына орналастырылады.

Бақылау сұрақтары

1. Өтініш дегеніміз не?

2. Сұраныс қандай функцияларды орындайды?

3. Сұрауларды құрудың қандай әдістері бар MS Access?

4. Әртүрлі сұрау әдістерінің айырмашылығы неде?

5. Шебердің көмегімен сұранысты қалай жасауға болады?

6. Өтініш формасы дегеніміз не?

7. Жазбаларды таңдау үшін жағдай қалай жасалады?

8. Негізгі логикалық операторларды атаңыз.

9. b арасындағы оператор дегеніміз не?

10. Оператордың мақсаты қандайҰнады ма?

11. Есептелген өрістер қалай құрылады?

12. Сұраныс құрастырушының артықшылықтары мен кемшіліктері?


Өзіндік жұмысқа арналған тапсырмалар

1-жаттығу. Келесі сипаттамасымен «Мерзімі өткен кітаптар» сұранысын жасаңыз:

1. «Дерекқорлар» терезесінде «Сұраулар» санатын таңдаңыз.

2. Шебер терезесін «Шеберді пайдаланып сұраныс жасау» пәрменімен ашыңыз.

3. «Кестелер мен сұраулар» ашылмалы тізімінде «Кітаптар» кестесін таңдаңыз. «Қолжетімді өрістер» тізімінен «Таңдалған өрістер» тізіміне «Тақырып» және «Автор» өрістерін жылжытыңыз.

4. «Кестелер мен сұраулар» ашылмалы тізімінде «Даналар» кестесін таңдаңыз. «Қолжетімді өрістер» тізімінен «Таңдалған өрістер» тізіміне «Түгендеу нөмірі» өрістерін жылжытыңыз , «Қайтару күні» Және «Қолжетімділік».

5. «Кестелер мен сұраулар» ашылмалы тізімінде «Оқырмандар» кестесін таңдаңыз. «Қолжетімді өрістер» тізімінен «Таңдалған өрістер» тізіміне «Number_BW», «Full name», «Tel_home», «Tel_work» өрістерін жылжытыңыз. «Келесі» түймесін басыңыз.

6. Бұл кезеңде егжей-тегжейлі сұрауды таңдап, «Келесі» түймесін басыңыз.

7. Сұраныс атауын көрсетіңіз Мерзімі өткен_кітаптаржәне «Аяқтау» түймесін басыңыз.

8. «Дизайн» түймесін басу арқылы дизайн режимінде «Мерзімі өткен_кітаптар» сұранысын ашайық (16.7-сурет).


9. Сұраныс пішінінде «Таңдау шарты» жолында «Қайтару_күні» өрісі үшін мәнді көрсетеміз < Қазір().

10. Сұраныс пішініндегі «Қолжетімділік» өрісінің «Таңдау шарты» жолында мәнді орнатыңыз Жоқжәне «Экранға шығару» құсбелгісін алып тастаңыз.

11. Дизайнер терезесін жабайық.

Осылайша, таңдалған жазбалар бірден екі шартты қанағаттандыруы керек: қайтару күні ағымдағы күннен аз болуы керек және кітап кітапханада болмауы керек.

2-тапсырма. Кітаптардың қай пәндік салаларға жататындығы туралы ақпарат алу үшін қарапайым сұрау жасаңыз.

3-тапсырма. «Мерзімі өткен_кітаптар» сұрауынан борышкерлер туралы ақпаратты (кітапхана картасының нөмірі, аты-жөні, үй және жұмыс телефондары) шығарып алыңыз.

4-тапсырма. Бір автордың кітаптарының тізімін алу үшін сұраныс жасаңыз.

Сұраулар – кестелерде сақталған мәліметтерді өңдеуге арналған Access ДҚБЖ-да қолданылатын құжаттар түрлерінің бірі.

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

Сұрау шеберібірнеше қадамдармен ол сұрауды құрастыру үшін қажетті ақпаратты жинайды, содан кейін пайдаланушының қойылған сұрақтарға жауаптарына байланысты автоматты түрде құрастырады.

Access бағдарламасындағы шеберлерді пайдалана отырып, келесі сұрау түрлерін жасауға болады:

§ Қарапайым сұраныс.

§ Айқас сұрау.

§ Қайталанатын жазбалар.

§ Бағыныштылары жоқ жазбалар.

Олардың кез келгенін жасау үшін деректер қоры терезесінен Сұраныс объектісін таңдап, Жасау түймесін басыңыз. Жаңа сұрау терезесі ашылады, оның пайда болуы суретте көрсетілген. 1.

1-сурет Мемлекеттік дерекқор терезесі және сұрау түрлерін таңдауға арналған терезе

Қарапайым өтінішпайдаланып құруға мүмкіндік береді Магистрлер үлгі сұраукестелердің немесе сұраулардың белгілі бір өрістерінен алынған деректер, бұл жаңадан бастаған пайдаланушылар үшін ең қолайлы. Оны таңдаған кезде Шебер іске қосылады, оның бірінші терезесінде (2-сурет) Кестелер мен сұраныстар тізімінен кестені таңдау керек, мысалы, Мұғалімдер құрамы, оның қолжетімді өрістерінің тізімінен мыналарды таңдаңыз: сұрауда болуы керек және [> ] түймесін басу арқылы әрқайсысын аударыңыз. Сол сияқты, сұрауға сол дерекқордың басқа кестелерінің өрістері қосылады.

Ескерту.Сұрауды тек кестелерде немесе тек дерекқор сұрауларында жасауға болады. Кестедегі өрістерді және сұраудағы сұрауды біріктіруге рұқсат етілмейді.

2-сурет Сұраныс үшін өрістерді таңдау.

Айқас сұрауүстелге ұқсайды , онда бастапқы кестенің үш өрісіне дейін (бағандары) көрсетіледі, қалған біреуінің ұяшықтары жаңа бағандарға түрлендіріледі және олардың қиылысында пайдаланушы көрсеткен мәндердің бірі көрсетіледі - Дисперсия, Минимум, Максимум, Орташа, Ауытқу, Сан, Бірінші, Соңғы және т.б. Мысалы, суреттегі сұраныс. 4-суреттегі 1-кестенің көлденең сұрауы. 3, онда қашықтық мәндері бағандардың атауына айналды:

Опция Қайталанатын жазбаларбір кестедегі немесе сұраудағы қайталанатын жазбаларды (жолдарды) іздеу үшін, суреттегі кесте үшін сұраныс жасайды. 3, берілген Қашықтық және Тариф өрістерімен ол келесідей көрінеді (Cурет 5)

MS Access мұндай сұранысты тек бір кестеге немесе сұранысқа (бірнеше дерекқор кестелері үшін емес) құруға мүмкіндік береді және онда көрсету керек.

3-сурет Айқас сұранысты құруға арналған 1-кесте


4-сурет Кестенің қиылысуы. 1

жазбалардан алынған деректердің толық бір мезгілде сәйкестігі бар өрістер ғана (мысалы, Көлік өрісін осы сұрауға қосу мүмкін емес). Сонымен қатар, тану үшін қайталанбайтын өрісті (Қала) қосуға болады.

Бағыныштылары жоқ жазбаларсалыстырылатын кестедегі ешбір жазбаларға сәйкес келмейтін жазбаларды табуға арналған сұрау. Бұл сұрау көптеген кестелік дерекқорлар үшін қолданылады.

Сурет 6 Негізгі кесте 1

Кестелерді салыстыру үшін бағыныңқысы жоқ сұрау Сур. 3 және сур. 6 сәйкес келмейтін сызықты көрсетеді (Cурет 7):

Бұл сұраулар Дизайн режимін пайдаланатын күрделірек сұрауларды жасау үшін негіз болып табылады.



Бөлісу