Мектеп кітапханасы кітаптарды есепке алу үшін мәліметтер қорын жасап жатыр. Барлық деректер books бір кестесінде сақталады, оның бағандары (өрістері): id — жазбаның реттік нөмірі, title — атауы, category — санаты, year — шығарылған жылы, copies — даналар саны, price — бір данасының бағасы (теңге). id өрісін жүйе өзі толтырады, ондағы нөмірлер қайталанбайды. Кестеде өрістер реті бойынша (id, title, category, year, copies, price) алты жазба бар: (1, Абай жолы, роман, 2012, 5, 3200); (2, Информатика 10, оқулық, 2019, 12, 2500); (3, Мектеп оқушыларына арналған Python, оқулық, 2021, 3, 4100); (4, Физика 9, оқулық, 2017, 8, 2300); (5, Дала ертегілері, ертегі, 2019, 8, 1800); (6, Қазақстан тарихы, оқулық, 2016, 10, 2700). Кітапханашы деректерді SQL тіліндегі құрылымдалған сұраныстармен алады. SELECT сұранысы өрістерді таңдайды, FROM кестені көрсетеді, WHERE жолдарды іріктеу шартын береді, ORDER BY нәтижені сұрыптайды: әдепкіде өсу ретімен, ал DESC сөзі кему ретімен сұрыптауды білдіреді. SUM(өріс) функциясы мәндерді қосады, COUNT(*) жолдарды санайды, GROUP BY өрістің мәні бірдей жолдарды топқа біріктіреді. WHERE ішіндегі шарттарды AND сөзімен біріктіруге болады: онда жол екі шартты да қанағаттандыруы тиіс. Сұраныс бөліктерінің реті мынадай: SELECT, FROM, WHERE, GROUP BY, ORDER BY. Кейін кітапханашы бағаларды тиынмен көрсетуді жоспарлап отыр, мысалы 2450,50, сонымен бірге бағаларды салыстырып, олардың қосындысын есептейді.
SELECT title FROM books WHERE category = 'оқулық' AND year >= 2017 AND copies > 5; сұранысы неше жол қайтарады?
Жауап пен талдауды көрсетуЖауап пен талдауды жасыру
Дұрыс жауап
- C2
Талдау
AND байланыстырғышы үш шарттың бәрінің орындалуын талап етеді. Оқулық төртеу: «Информатика 10», «Мектеп оқушыларына арналған Python», «Физика 9», «Қазақстан тарихы». Жылы 2017-ден кем емес оқулық үшеу, «Қазақстан тарихы» (2016) қалып қояды. Даналар саны 5-тен көп оқулықтар — «Информатика 10» (12) және «Физика 9» (8), ал «Мектеп оқушыларына арналған Python» кітабының үш данасы бар. Екі жол қалады.