Microsoft Access'те GROUP BY - бул белгилүү бир талаадагы бирдей маанилер менен жазууларды бир жазууда бириктирүү үчүн колдоно турган пункт. Эгерде сиз SELECT билдирүүсүнө AVG, COUNT же SUM сыяктуу SQL агрегаттык функциясын кошсоңуз, Access ар бир жазуу үчүн жыйынды маанини түзөт.
Бул макаладагы нускамалар Microsoft 365, Access 2019, 2016, 2013 жана 2010 үчүн Access үчүн колдонулат.
GROUP BY колдонулууда
Сиз GROUP BY функциясын SQL көрүнүшүндө SQL сурамынын жардамы менен таап, колдоно аласыз. Бул дайындарыңызга жетүүнүн жана көзөмөлдөөнүн эң жөнөкөй жана түз жолдорунун бири.
-
Аккаунтту иштетип, маалымат базасын ачыңыз.
Бул мисалда Northwind үлгүлөр базасы колдонулат.
-
Түзүү өтмөгүн тандаңыз.
-
Суроолор тобунан Суроо Дизайн тандаңыз.
-
Таблицаларды кошуу тизмесинен, сиз иштей турган таблицаны тандаңыз.
-
Натыйжалар тобунан Көрүү тандаңыз жана SQL көрүнүшү тандаңыз.
- Негизги бөлүм суроо терминалынын терезесине өтөт. Бул жерде сиз каалаган суроону киргизе аласыз.
-
SQL'ден негизги топтоого ээ болуу үчүн, сиз төмөнкүдөй нерсени киргизмексиз:
ТАҢДАҢЫЗ таблицанын атын КАЙДАГЫ мамычаны/категорияны ЖАКШЫ «киргизүү»;
Табылдын чыныгы атын, категорияны же тилкени башын жана сиз издеп жаткан чыныгы киргизүү маанисин алмаштырыңыз.
Сурооду талкалоо
Мисалы, төмөндөгү атрибуттардан турган буйрутма маалымат таблицасын карап көрөлү:
- OrderID: Ар бир буйрутманы уникалдуу аныктоочу сандык маани. Бул талаа маалымат базасынын негизги ачкычы.
- Salesperson: Товарларды саткан сатуучунун атын камтыган текст мааниси. Бул талаа персонал маалыматын камтыган башка таблицанын чет өлкөлүк ачкычы.
- CustomerID: Кардардын эсебинин номерине туура келген сандык маани. Бул талаа ошондой эле чет өлкөлүк ачкыч болуп саналат, ал кардар эсебинин маалыматын камтыган таблицага шилтеме кылат.
- Revenue: Сатуунун доллар суммасына туура келген сандык маани.
Сатуучулар үчүн иш-аракетти текшерүүгө убакыт келгенде, Буйрутмалар жадыбалында ошол кароо үчүн колдонула турган баалуу маалымат камтылган. Джимге баа берип жатканда, мисалы, Джимдин бардык сатуу жазууларын чыгарган жөнөкөй суроо жазсаңыз болот:
ЗаказдарданТАНДАҢЫЗ, ЖЕРДЕ сатуучу «Джим» ЖАКШЫ;
Бул маалымат базасынан Джим жасаган сатууларга тиешелүү бардык жазууларды чыгарат:
OrderID Сатуучу Кардар ID Кирешеси
12482 Jim 182 40000
12488 Jim 219 25000
12519 Jim 137 85000 Jim 137 85000 Jim 137 85000221 12741 Jim 155 90000
Сиз бул маалыматты карап чыгып, майнаптуулук статистикасын иштеп чыгуу үчүн кол менен эсептөөлөрдү жүргүзсөңүз болот, бирок бул компаниядагы ар бир сатуучу үчүн кайталаган тажатма иш. Анын ордуна, сиз бул ишти компаниядагы ар бир сатуучунун статистикасын эсептеген бир GROUP BY суроосу менен алмаштырсаңыз болот. Сиз суроо жазасыз жана маалымат базасы натыйжаларды сатуучу талаасынын негизинде топтош керек экенин белгилейсиз. Андан кийин жыйынтыктар боюнча эсептөөлөрдү жүргүзүү үчүн SQL агрегаттык функцияларынын каалаганын колдонсоңуз болот.
Мына мисал. Эгерде сиз төмөнкү SQL билдирүүсүн аткарган болсоңуз:
Сатуучуну, СУМДУ(Кирешени) 'Жалпы', MIN(Киреше) 'Эң кичинекей', MAX(Киреше) 'Эң чоң', AVG(Киреше) 'Орточо', COUNT(Киреше) ' КАСИ. Сатуу кызматкери боюнча Заказдар ТОПТОРУДАН номер;
Сиз төмөнкү натыйжаларды аласыз:
Сатуучулар
Көрүп тургандай, бул күчтүү функция SQL сурамынын ичинен кыскача отчетторду түзүүгө мүмкүндүк берип, иштин жыйынтыгын карап жаткан менеджерге баалуу бизнес чалгындоосун берет. GROUP BY пункту көбүнчө бул максатта маалымат базаларында колдонулат жана DBAнын айла-амалдарынын баштыгында баалуу курал болуп саналат.