Есептер: деректер тегін көрсету баптауы
Есептерде деректер тегінен шығатын мәліметтерді көрсетуге арналған негізгі ереже: Бір есеп жолында тек бір деректер тегі жазбасы ғана болуы мүмкін. Алайда бір есепте бірнеше деректер тегінен мәлімет шығару қажет болуы жиі кездеседі. Оңай түсіну үшін Планнед/Ацтұал есепті қарастырайық. Әр күн үшін бұл есеп келесіні шығарады:
- жоспарланған жұмыс уақыты;
- фактілік жұмыс уақыты;
- олардың арасындағы айырмашылық.
Осы есептің орындалу нәтижесі келесідей көрінеді (фрагмент):
Нәтиже көрінісінде соңғы сандар деректер тегі жазбаларынан жиналғанын көруге болады: әр жолда Планнед уоркінг тіме немесе Ацтұал уоркінг тіме деректер тегі жазбасының біреуі бар. Бұл деректер тегтерінің әрқайсысы Планнед не Ацтұал бағанына түсіп тұрғаны айқын.
Міне, осы есеп бағандарына арналған баптаулар қалай көрінетіндігі:
Қызыл түспен бөлінген блоктарға назар аударыңыз. Планфіх осы баптауларды келесідей интерпретациялайды:
- Планнед бағанында деректер Планнед уоркінг тіме деректер тегінен көрсетіледі, ал Ацтұал уоркінг тіме деректер тегі бар жолдар үшін осы бағанда ештеңе көрсетілмейді.
- Ацтұал бағанында деректер Ацтұал уоркінг тіме деректер тегінен көрсетіледі, ал Планнед уоркінг тіме деректер тегі бар жолдар үшін осы бағанда ештеңе көрсетілмейді.
Енді Дате бағанының баптаулары үшін жасылмен бөлінген блокқа қараңыз. Бұл бағанда деректер екі жағдайда да — Планнед уоркінг тіме және Ацтұал уоркінг тіме деректер тегтері үшін көрсетіледі. Екі жағдайда да бұл деректер тегтеріндегі «Дате» деп аталатын өрістер болып табылады және деректер тегі жазбасының қай күнге жататынын көрсетеді. Осы тәсіл әртүрлі деректер тегтерінен алынған деректерді топтауға және қысқартылған (цоллапсед) деректер алуға мүмкіндік береді: бір жолда жоспарланған және фактілік жұмыс уақыты бойынша жиынтық мәліметті көре аламыз.
Сипатталған мысал есептерде бірнеше деректер тегі болғанда орындалуы тиіс ережені көрсетеді: Бір жолда бірнеше деректер тегі бойынша мәліметтерді көрсету үшін оларды әдейі топтауыңыз қажет.
Мысалдағы Дате бағаны осы әдейі топтаудың мысалы болып табылады:
- әр деректер тегі үшін сәйкес өрістер таңдалған;
- олар бір бағанда көрсетілген;
- осы бағанда топтау (гроұпінг) қосылған.