Access SQL тіліне кіріспе

Деректерді дерекқордан қалпына келтіру қажет болғанда, деректерге құрылымдық сұрау тілі немесе SQL арқылы алуды сұрайсыз. SQL – ағылшын тіліне жақын және дерекқор бағдарламалары түсінетін компьютер тілі. Іске қосылатын әрбір сұрау SQL тілін көріністер артында пайдаланады.

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

Ескерту : SQL серверін веб сұрауы үшін өңдеу мүмкін емес.

Бұл мақалада

SQL дегеніміз не?

Негізгі SQL сөйлемдері: ТАҢДАУ, ҚАЙДАН және ҚАЙДА

Нәтижелерді сұрыптау: РЕТІ

Қорытынды жасалған деректермен жұмыс істеу: ТОПТАУ және БАР

Сұрау нәтижелерін біріктіру: БІРІКТІРУ

ТАҢДАУ сөйлемі туралы қосымша

Өрнек арқылы таңдау

ҚАЙДАН сөйлемі туралы қосымша

ҚАЙДА сөйлемі туралы қосымша

ҚАЙДА сөйлемінің синтаксисі

SQL дегеніміз не?

SQL – бірқатар фактілер мен олардың арасындағы қатынастармен жұмыс істеуге арналған компьютер тілі. Microsoft Office Access сияқты қатыстық дерекқор бағдарламалары деректермен жұмыс істеу үшін SQL тілін пайдаланады. Көп компьютер тілдеріне ұқсамай, SQL тілі тіпті жаңадан бастаушылардың өздеріне оқуына және түсінуіне қиын емес. Көп компьютер тілдері сияқты, SQL тілі ISO және ANSI сияқты стандарттау органдары таныған халықаралық стандарт болып табылады.

“SQL жаңадан бастаушылардың өздеріне оқуына және түсінуіне қиын емес.”

Сұрақтарға жауап беруге көмектесетін бірқатар деректерді сипаттауға SQL тілін пайдалануға болады. SQL тілін пайдаланғанда, дұрыс синтаксисті пайдалану керек. Синтаксис – тіл элементтері дұрыс біріктірілген ережелер жиынтығы. SQL синтаксисі ағылшын тілінің синтаксисіне негізделген және көптеген бірдей элементтерді Бағдарламаларға арналған Visual Basic (VBA) синтаксисі ретінде пайдаланады.

Мысалы, аты Маржан болатын істес кісілерге арналған тектердің тізімін алатын қарапайым SQL нұсқауы мынаған ұқсайды:

ТАҢДАУ Last_Name
ҚАЙДАН Contacts
ҚАЙДА First_Name = 'Mary';

Ескерту : SQL тек деректерді дұрыс бақылау үшін емес, сондай-ақ, кестелер сияқты дерекқор нысандарының жобасын жасау және өзгерту үшін пайдаланылады. Дерекқор нысандарын жасау және өзгерту үшін пайдаланылатын SQL бөлігі деректерді анықтау тілі (DDL) деп аталады. Бұл тақырыпта DDL тілі қамтылмайды. Қосымша ақпарат алу үшін, Деректерді анықтау сұрауы арқылы кестелерді немесе индекстерді құру немесе өзгерту мақаласын қараңыз.

ТАҢДАУ нұсқаулары

SQL тілі арқылы деректер жиынтығын сипаттау үшін ТАҢДАУ нұсқауын жазасыз. ТАҢДАУ нұсқауында дерекқордан алынатын деректер жиынтығының толық сипаттамасы бар. Ол мыналарды қамтиды:

  • Қандай кестелер деректерді қамтиды.

  • Әр түрлі көздердегі деректер қалай қатысты болады.

  • Қандай өрістер немесе есептеулер деректер жасайды.

  • Деректер сәйкес келуге тиісті қамтылатын шарттар.

  • Нәтижелерді сұрыптау керек пе және оның жолдары.

SQL сөйлемдері

Сөйлем сияқты, SQL нұсқауында сөйлемдер болады. Әр сөйлем SQL нұсқауына арналған функцияны орындайды. Кейбір сөйлемдер ТАҢДАУ нұсқауында қажетті. Төмендегі кестеде ең жиі кездесетін SQL сөйлемдері берілген.

SQL сөйлемі

Бұл не істейді

Сұралған

ТАҢДАУ

Қызығушылық танытқан деректер бар өрістер берілген.

Иә

ҚАЙДАН

ТАҢДАУ сөйлемінде берілген өрістері бар кестелер берілген.

Иә

ҚАЙДА

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

Жоқ

РЕТІ

Нәтижелерді сұрыптау жолдарын көрсетеді.

Жоқ

ТОПТАУ

Топтық функциялары бар SQL нұсқауында ТАҢДАУ сөйлемінде қорытынды жасалмаған өрістер беріледі.

Мұндай өрістер бар болғанда ғана

БАР

Топтық функциялары бар SQL нұсқауында ТАҢДАУ нұсқауында қорытынды жасалған өрістерге қолданылатын шарттарды көрсетеді.

Жоқ

SQL шарттары

Әр SQL сөйлемі шарттардан құралған — оларды сөз таптарымен салыстыруға болады. Төмендегі кестеде SQL шарттарының түрлері берілген.

SQL шарты

Сөз таптарымен салыстыруға болады

Анықтама

Мысал

идентификатор

зат есім

Өріс атауы сияқты дерекқор нысанын анықтау үшін пайдаланылатын атау.

Тұтынушылар.[Телефон нөмірі]

амалдағыш

етістік немесе үстеу

Әрекетті білдіретін немесе әрекетті өзгертетін кілт сөз.

СИЯҚТЫ

тұрақты мән

зат есім

Сан немесе НӨЛ сияқты өзгермейтін мән.

42

өрнек

сын есім

Идентификаторлардың, амалдағыштардың, тұрақты мәндерді және бір мәнге тең болатын функциялардың тіркесімі.

>= Өнімдер.[Бірлік бағасы]

Беттің жоғарғы жағы

Негізгі SQL сөйлемдері: ТАҢДАУ, ҚАЙДАН және ҚАЙДА

SQL нұсқауы жалпы пішін алады:

ТАҢДАУ field_1
ҚАЙДАН table_1
ҚАЙДА criterion_1
;

Ескертулер : 

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

  • Әрбір ТАҢДАУ нұсқауы үтірлі нүктемен (;) аяқталады. Үтірлі нүкте соңғы сөйлемнің соңына немесе SQL нұсқауының соңындағы жолға өздігінен пайда болуы мүмкін.

Access бағдарламасындағы мысал

Төменде қандай қарапайым таңдау сұрауына арналған SQL нұсқауының Access бағдарламасында ұқсас көрінуі мүмкін екендігі көрсетіледі:

ТАҢДАУ нұсқауын көрсететін SQL нысанының қойындысы

1. ТАҢДАУ сұрауы

2. ҚАЙДАН сөйлемі

3. ҚАЙДА сөйлемі

Бұл мысалдағы SQL нұсқауы "«Істес кісілер» деп аталатын кестеден «Электрондық пошта мекенжайы және компания» деп аталатын өрістерге сақталған деректерді, әсіресе, «Қала» өрісінің мәні Шымкент болып келетін жазбаларды таңдаңыз" деп оқиды.

SQL синтаксисінің қалай жұмыс істейтінін көру үшін мысалдан бір сөйлемді бір уақытта қарайық.

ТАҢДАУ сөйлемі

ТАҢДАУ [Электрондық пошта мекенжайы], Компания

Бұл ТАҢДАУ сөйлемі деп аталады. Ол идентификаторлардан ([Электрондық пошта мекенжайы] және компания) кейін келетін амалдағыштан (ТАҢДАУ) тұрады.

Егер идентификаторда бос орындар немесе арнайы таңбалар (мысалы, "Электрондық пошта мекенжайы") болса, оны тік жақшаларға алу керек.

ТАҢДАУ сөйлемінде қандай кестелердің өрістер қамтитынын айтудың қажет жоқ және ол қамтылатын деректер бойынша кездесуге тиісті шарттарды көрсете алмайды.

ТАҢДАУ сөйлемі әрдайым ТАҢДАУ нұсқауындағы ҚАЙДАН сөйлемінің алдынан пайда болады.

ҚАЙДАН сөйлемі

ҚАЙДАН істес кісілері

Бұл ҚАЙДАН сөйлемі болып табылады. Ол идентификатордан (Істес кісілер) кейін келетін амалдағыштан (ҚАЙДАН) тұрады.

ҚАЙДАН сөйлемінде таңдалатын өрістер берілмеген.

ҚАЙДА сөйлемі

ҚАЙДА Қала ="Шымкент"

Бұл ҚАЙДА сөйлемі болып табылады. Ол өрнектен (Қала="Шымкент") кейін келетін амалдағыштан (ҚАЙДА) тұрады.

Ескерту : ҚАЙДА сөйлемі ТАҢДАУ және ҚАЙДАН сөйлемдері сияқты емес, ТАҢДАУ нұсқауының қажетті элементі болып табылады.

SQL тілі ТАҢДАУ, ҚАЙДАН және ҚАЙДА сөйлемдері арқылы мүмкіндік беретін көп әрекетті орындауға болады. Бұл сөйлемдерді пайдалану жолдары туралы қосымша ақпарат осы мақаланың соңындағы осы бөлімдерде берілген:

ТАҢДАУ сөйлемі туралы қосымша

ҚАЙДАН сөйлемі туралы қосымша

ҚАЙДА сөйлемі туралы қосымша

Беттің жоғарғы жағы

Нәтижелерді сұрыптау: РЕТІ

Microsoft Office Excel сияқты Access бағдарламасы деректер кестесіндегі сұрау нәтижелерін сұрыптауға мүмкіндік береді. Сондай-ақ, сұрау ашылғанда РЕТІ сөйлемі арқылы нәтижелерді қалай сұрыптау қажеттігін сұраудан көрсетуге болады. Егер РЕТІ сөйлемін пайдалансаңыз, ол SQL нұсқауындағы соңғы сөйлем болып табылады.

РЕТІ сөйлемінде сұрыптау әрекеттерін қолдану қажет бірдей рет пен сұрыптауға пайдалану қажет өрістердің тізімі бар.

Мысалы, нәтижелерді «Компания» өрісінің мәні бойынша кему ретімен бірінші және  — «Компания» үшін мәні бірдей жазбалар болса — «Электрондық пошта мекенжайы» өрісіндегі мәндерді өсу ретімен екінші сұрыптау қажет делік. РЕТІ сөйлемі мынаған ұқсайтын болады:

РЕТІ Компания DESC, [Электрондық пошта мекенжайы]

Ескерту : Әдепкіде, Access бағдарламасы мәндерді өсу ретімен (A-Я, кішісінен үлкеніне) сұрыптайды. Оның орнына мәндерді кему ретімен сұрыптау үшін DESC кілт сөзін пайдаланыңыз.

Беттің жоғарғы жағы

Қорытынды жасалған деректермен жұмыс істеу: ТОПТАУ және БАР

Кейде бір айдағы жалпы сату немесе қоймадағы ең қымбат заттар сияқты қорытынды жасалған деректермен жұмыс істеу қажет болды. Оны орындау үшін топтастыру функциясы ТАҢДАУ сөйлеміндегі өріске қолданасыз. Мысалы, егер сұрауыңыздың әр компания үшін берілген электрондық пошта мекенжайларының санын көрсету қажет болса, ТАҢДАУ сөйлемі мынаған ұқсауы мүмкін:

ТАҢДАУ САНАҚ([Электрондық пошта мекенжайы]), Компания

Пайдалануға болатын топтық функциялар пайдаланылатын өрістегі немесе өрнектегі деректер түріне байланысты.

Топтық функцияда пайдаланылмайтын өрістерді көрсету: ТОПТАУ сөйлемі

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

ТОПТАУ сөйлемі бірден ҚАЙДА сөйлемінен кейін немесе ҚАЙДА сөйлемі болмағанда ҚАЙДАН сөйлемінен кейін келеді. ТОПТАУ сөйлемінде ТАҢДАУ сөйлемінде пайда болатын өрістер берілген.

Мысалы, алдыңғы мысалды жалғастыра отырып, ТАҢДАУ сөйлемі топтық функцияны «Компания» өрісіне емес, [Электрондық пошта мекенжайы] өрісіне қолдансаңыз, ТОПТАУ сөйлемі мынаған ұқсайды:

ТОПТАУ Компания

Топ шарттары арқылы жиынтық бағаларды шектеу: БАР сөйлемі

Егер нәтижелерді шектеу үшін шарттарды пайдалану қажет болса, бірақ шарттарды қолданылатын өріс топтық функцияда пайдаланылмаса, ҚАЙДА сөйлемін пайдалану мүмкін емес. Оның орнына, БАР сөйлемін пайдаланасыз. БАР сөйлемі ҚАЙДА сөйлемі сияқты жұмыс істейді, бірақ жиындық деректерге пайдаланылады.

Мысалы, AVG функциясын (жиынтық бағаны есептейтін) ТАҢДАУ сөйлеміндегі бірінші өріспен пайдаланасыз делік:

ТАҢДАУ САНАҚ([Электрондық пошта мекенжайы]), Компания

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

БАР САНАҚ([Электрондық пошта мекенжайы])>1

Ескерту : Сұрауда ҚАЙДА сөйлемі мен БАР сөйлемі болуы мүмкін — топтық функцияда пайдаланылмайтын өрістерге арналған шарттар ҚАЙДА сөйлеміне өтеді, ал топтық функциялармен пайдаланылатын өрістерге арналған шарттар БАР сөйлеміне өтеді.

Беттің жоғарғы жағы

Сұрау нәтижелерін біріктіру: БІРІКТІРУ

Бірнеше ұқсас таңдаулы сұраулармен біріктірілген жинақ сияқты бірге берілген деректердің барлығын қарап шығу қажет болса, БІРІКТІРУ сұрауын пайдаланасыз.

БІРІКТІРУ амалдағышы екі ТАҢДАУ нұсқауын біреуіне біріктіруге мүмкіндік береді. Біріктірілетін ТАҢДАУ нұсқауларында шығыс өрістерінің бірдей саны бірдей ретпен және бірдей немесе үйлесімді деректер түрімен берілуі керек. Сұрауды ашқанда, сәйкес өрістердің әр жинағындағы деректер бір шығыс өрісіне біріктіріледі, сонда сұрау шығысында әрбір таңдаулы нұсқау сияқты өрістерінің саны бірдей болады.

Ескерту : Біріктіру сұрауының мақсаттары үшін «Сан» және «Мәтін» деректер түрлері үйлесімді болып келеді.

БІРІКТІРУ амалдағышын пайдаланғанда, сұрау нәтижелерінің көшірме жолдарды қамту керектігін (біреуі болған жағдайда) де БАРЛЫҒЫ кілт сөзімен көрсетуге болады.

Екі ТАҢДАУ нұсқауын біріктіретін біріктіру сұрауына арналған негізгі SQL синтаксисі төмендегідей болады:

ТАҢДАУ field_1
ҚАЙДАН table_1
БІРІКТІРУ [ALL]
ТАҢДАУ field_a
ҚАЙДАН table_a
;

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

ТАҢДАУ name, price, warranty_available, exclusive_offer
ҚАЙДАН Products
БІРІКТІРУ ALL
ТАҢДАУ name, price, guarantee_available, exclusive_offer
ҚАЙДАН Services
;

ТАҢДАУ нұсқауларын БІРІКТІРУ амалдағышы арқылы біріктіру жолдары туралы қосымша ақпарат алу үшін, Біріктіру сұрауы арқылы бірнеше таңдаулы сұраулардың нәтижелерін біріктіру мақаласын қараңыз.

Беттің жоғарғы жағы

ТАҢДАУ сөйлемі туралы қосымша

ТАҢДАУ нұсқауында ТАҢДАУ сөйлемінде құрамында пайдалану қадет деректері бар өрістер берілген.

Идентификаторларға тік жақшаларды пайдалану

ТАҢДАУ сөйлеміндегі өрістің атауына тік жақшаларды пайдалануға болады. Егер атауында бос орындар немесе арнайы таңбалар (мысалы, тыныс белгілері) болмаса, тік жақшалар міндетті емес. Егер атауында бос орындар немесе арнайы таңбалар болмаса, жақшаларды пайдалану керек.

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

Егер SQL нұсқауында бірдей атауы бар екі не одан көп өріс болса, әр өрістің деректер көзінің атауын ТАҢДАУ сөйлеміндегі өріс атауына қосу керек. ҚАЙДАН сөйлемінде пайдаланылатын деректер көзіне бірдей атауды пайдаланасыз.

Барлық өрісті таңдау

Деректер көзіндегі барлық өрісті қамтығыңыз келгенде, ТАҢДАУ сөйлеміндегі барлық өрісті жеке тізімде беруге болады немесе жұлдызша қойылмалы таңбаны (*) пайдалануға болады. Жұлдызшаны пайдаланған кезде Access бағдарламасы сұраудың қашан ашылатынын, деректер көзінде қандай өрістер болатынын анықтап, сұраудағы сол барлық өрісті қамтиды. Жаңа өрістер деректер көзіне қосылғанда, ол сұраудың жаңартылып тұратынына көз жеткізуге көмектеседі.

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

Мысалы, барлық өрісті «Тапсырыстар» кестесінен, ал тек электрондық пошта мекенжайын «Істес кісілер» кестесінен таңдау қажет болды делік. ТАҢДАУ сөйлемі мынаған ұқсауы мүмкін:

ТАҢДАУ реттері.*, Істес кісілер.[Электрондық пошта мекенжайы]

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

Дәл мәндерді таңдау

Егер нұсқаудың артық деректерді таңдайтынын білсеңіз және тек дәл мәндерді көргеніңіз жөн болса, ТАҢДАУ сөйлемінде ДӘЛ кілт сөзін пайдалануға болады. Мысалы, тұтынушыларыңыздың әрқайсысы әр түрлі қызығушылықты білдіреді, олардың біразы бірдей телефон нөмірін пайдаланады делік. Егер әр телефон нөмірін бір-ақ рет көрсету үшін, ТАҢДАУ сөйлемі былайша шығады:

ТАҢДАУ ДӘЛ [txtCustomerPhone]

Өрістерге немесе өрнектерге ауыстыратын атауларды пайдалану: AS кілт сөзі

AS кілт сөзі арқылы деректер кестесіндегі өріс немесе ТАҢДАУ сөйлеміндегі өрістің бүркеніші үшін көрсетілетін белгіні өзгертуге болады. Өріс бүркеніші – нәтижелердің оқылуын жеңілдету үшін сұраудағы өріске тағайындалатын атау. Мысалы, егер деректерді txtCustPhone деп аталатын өрістен таңдау қажет болса және өрісте тұтынушының телефон нөмірлері болса, ТАҢДАУ нұсқауындағы өріс бүркеніші арқылы нәтижелердің оқылуын былайша жақсартуға болады:

ТАҢДАУ [txtCustPhone] РЕТІНДЕ [Customer Phone]

Ескерту : ТАҢДАУ сөйлеміндегі өрнекті пайдаланған кезде өріс бүркенішін пайдалану керек.

Өрнек арқылы таңдау

Кейде деректерге негізделген есептеулерге қарау немесе өріс деректерінің бір бөлігін қалпына келтіру қажет болды. Мысалы, дерекқордың BirthDate өрісіндегі деректерге қарай тұтынушылар туған жылын жазу қажет делік. ТАҢДАУ сөйлемі мынаған ұқсауы мүмкін:

ТАҢДАУ DatePart("жжжж",[BirthDate]) РЕТІНДЕ [Туылған жыл]

Бұл өрнек DatePart функциясынан және екі  — "жжжж" (тұрақты мән) және [BirthDate] (идентификатор) дәлелінен тұрады.

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

Беттің жоғарғы жағы

ҚАЙДАН сөйлемі туралы қосымша

ТАҢДАУ нұсқауында ҚАЙДАН сөйлемі құрамында ТАҢДАУ сөйлемі пайдаланатын деректері бар кестелерді немесе сұрауларды көрсетеді.

Белгілі бір тұтынушының телефон нөмірін білу қажет болды делік. Құрамында осы деректерді сақтайтын өрісі бар кесте tblCustomer деп аталады деп қарастырғанда, ҚАЙДАН сөйлемі мынаған ұқсайды:

ҚАЙДАН tblCustomer

Идентификаторларға тік жақшаларды пайдалану

Атауға тік жақшаларды пайдалануға болады. Егер атауында бос орындар немесе арнайы таңбалар (мысалы, тыныс белгілері) болмаса, тік жақшалар міндетті емес. Егер атауында бос орындар немесе арнайы таңбалар болмаса, жақшаларды пайдалану керек.

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

Деректер көздеріне ауыстыратын атауларды пайдалану

ҚАЙДАН сөйлеміндегі кесте бүркеніші арқылы ТАҢДАУ нұсқауындағы деректер көзіне қарау үшін басқа атауды пайдалануға болады. Кесте бүркеніші – өрнек деректер көзі ретінде пайдаланылған кезде немесе SQL нұсқауын теруді және оқуды жеңілдету үшін сұраудағы деректер көзіне тағайындалатын атау. Деректер көзінің атауы ұзын немесе теруге қиын болған жағдайда, әсіресе, әр түрлі кестелердің атауы бірдей бірнеше өріс болған жағдайда, ол пайдалы болуы мүмкін.

Мысалы, егер деректерді екі өрістен (екеуі де идентификатор деп аталады, біреуі tblCustomer кестесінен, ал екіншісі tblOrder кестесінен алынады) таңдағыңыз келсе, ТАҢДАУ сөйлемі мынаған ұқсауы мүмкін:

ТАҢДАУ [tblCustomer].[ID], [tblOrder].[ID]

ҚАЙДАН сөйлеміндегі кесте бүркеніштері арқылы сұрауға теруді жеңілдетуге болады. ҚАЙДАН сөйлемі кесте бүркеніштерімен мынаған ұқсауы мүмкін:

ҚАЙДАН [tblCustomer] [C] РЕТІНДЕ, [tblOrder] [O] РЕТІНДЕ

Содан кейін ТАҢДАУ сөйлеміндегі сол кестенің бүркеніштерін былайша пайдалануға болады:

ТАҢДАУ [C].[ID], [O].[ID]

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

Қатыстық деректерді қосу

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

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

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

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

Егер жазбаларды кестеден басқа кестеде тиісті жазба болмаған кезде қоспай, сұраудың кестелердегі жазбалармен бірігуі үшін кестелерді біріктіру қажет болса, ҚАЙДАН сөйлемі мынаған ұқсауы мүмкін (оқылуы үшін осында қосылған жол үзілімі):

ҚАЙДАН [tblCustomer] ІШКІ БІРІКТІРУ [tblOrder]
БОЙЫНША [tblCustomer].[CustomerID]=[tblOrder].[CustomerID]

Microsoft Office Access бағдарламасында ТАҢДАУ нұсқауының ҚАЙДАН сөйлемінде біріктіру орын алады. Біріктірудің екі түрі бар: ішкі біріктірулер және сыртқы біріктірулер. Төмендегі бөлімдер осы біріктірудің екі түрін түсіндіреді.

Ішкі біріктірулер

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

Ішкі біріктіруде мына синтаксис бар (оқылуы үшін осында қосылған жол үзілімі):

ҚАЙДАН table1 ІШКІ БІРІКТІРУ table2
БОЙЫНША table1.field1 compopr table2.field2

Төмендегі кестеде ІШКІ БІРІКТІРУ әрекетінің әр түрлі бөліктерін сипатталады.

Бөлік

Сипаттама

table1, table2

Жазбалары біріктірілетін кестелердің аттары.

field1, field2

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

compopr

Қатыстық салыстырмалы амалдағыш: "=," "<," ">," "<=," ">=," or "<>."

Сыртқы біріктірулер

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

Сыртқы біріктірудің синтаксисі мынадай:

ҚАЙДАН table1 [ LEFT | RIGHT ] БІРІКТІРУ table2
БОЙЫНША table1.field1compopr table2.field2

Төмендегі кестеде СОЛ ЖАҚ БІРІКТІРУ және ОҢ ЖАҚ БІРІКТІРУ әрекеттерінің әр түрлі бөліктері сипатталған.

Бөлік

Сипаттама

table1, table2

Жазбалары біріктірілетін кестелердің аттары.

field1, field2

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

compopr

Қатыстық салыстырмалы амалдағыш: "=," "<," ">," "<=," ">=," or "<>."

Беттің жоғарғы жағы

ҚАЙДА сөйлемі туралы қосымша

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

Төмендегі кестеде бірнеше үлгі шарттары көрсетіліп, олардың жұмыс тәсілдері түсіндірілген.

Шарттар

Сипаттама

>25 және <50

Бұл шарт «Баға» және «ҚорындағыБірліктер» сияқты «Нөмірлер» өрісіне қолданылады. Оған мәні 25 -тен үлкен немесе 50-ден кіші өрісі бар жазбалар ғана кіреді.

DateDiff ("yyyy", [BirthDate], Date()) > 30

Бұл шарт «BirthDate» сияқты «Күн/Уақыт» өрісіне қолданылады. Адамның туған жылы мен бүгінгі күн арасындағы жылдардың саны 30-дан үлкен жазбалар ғана сұрау нәтижесіне кіреді.

Нөлге тең

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

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

Маңызды : Егер өріс топтық функциямен пайдаланылса, сол өріске арналған шарттарды ҚАЙДА сөйлемінде көрсету мүмкін емес. Оның орнына, жиынтық өрістерге арналған шарттарды көрсету үшін БАР сөйлемін пайдаланасыз. Қосымша ақпарат алу үшін, Қорытынды жасалған деректермен жұмыс істеу: ТОПТАУ және БАР бөлімін қараңыз.

ҚАЙДА сөйлемінің синтаксисі

ҚАЙДА сөйлемінің төмендегідей негізгі синтаксисі бар:

ҚАЙДА өрісі = шарт

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

ҚАЙДА [LastName]='Bagel'

Ескерту : Шарттарды ҚАЙДА сөйлеміне мәндердің эквиваленттілігі бойынша орналастырудың қажеті жоқ. Үлкен (>) немесе кіші (<) сияқты басқа да салыстыру амалдағыштарын пайдалануға болады. Мысалы, ҚАЙДА [Баға]>100.

Деректер көздеріне біріктіруге ҚАЙДА сөйлемін пайдалану

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

Әр түрлі деректер түрі бар өрістер арасында біріктіру мүмкін емес. Екі деректер көзіндегі деректерді әр түрлі деректер түрлеріндегі өрістердегі мәндерге қарай біріктіру үшін ҰҚСАС кілт сөзі арқылы басқа өрістің шарты ретінде бір өрісті пайдаланатын ҚАЙДА сөйлемін жасайсыз.

Мысалы, field1 (table1 ішіндегі мәтін өрісі) ішіндегі деректер field2 (table2 ішіндегі сан өрісі) ішіндегі деректерге сәйкес келген жағдайда ғана table1 және table2 ішіндегі деректерді пайдалану қажет болады делік. ҚАЙДА сөйлемі мынаған ұқсайды:

ҚАЙДА field1 LIKE field2

ҚАЙДА сөйлемінде пайдалануға шарттарды жасау жолдары туралы қосымша ақпарат алу үшін, Сұрау шарттарының мысалдары мақаласын қараңыз.

Беттің жоғарғы жағы

Дағдыларды жетілдіру
Оқыту курсымен танысыңыз
Жаңа мүмкіндіктерге бірінші болып қол жеткізу
Office Insider бағдарламасына қосылу

Осы ақпарат пайдалы болды ма?

Пікіріңіз үшін рақмет!

Пікіріңізге рақмет! Сізді Office қолдау көрсету қызметіндегі агенттердің бірімен байланыстырған жөн болуы мүмкін.

×