РЕЛЯЦИОНДЫ ДЕРЕКТЕР ҚОРЫН ҚОРҒАУ ЖӘНЕ ЖОБАЛАУ пәні бойынша 1 мәжілік бағалауға арналған тапсырмалары
SQL-пен жұмыс: №1 мәжіліктік бағалауға арналған тапсырмалар
Бұл тапсырмалар «Реляционды деректер қорын қорғау және жобалау» пәні бойынша SQL негіздерін қайталауға арналған. Сұрақтар кесте құрылымы, кілттер, деректер типтері және SELECT сұраныстарын құрастыру тақырыптарын қамтиды.
1) Негізгі ұғымдар
-
1. «Тапсырыс берушілер» кестесінде қай өріс алғашқы кілт (Primary Key) болып табылады?
-
2. «Тапсырыс берушілер» кестесіндегі 4-баған нені білдіреді?
-
3. Жол (row) басқаша қалай аталады? Ал баған (column) ше?
-
4. Кестенің алғашқы 5 жолын көру үшін кейде сұраныс жазбай-ақ көруге болады. Неге?
-
5. SQL-да берілген деректер типтерінің негізгі айырмашылықтары қандай?
-
6. ANSI типі DATE деректерін тани ма (recognize)?
-
7. SQL-дің қай ішкі бөлігі кестеге мәлімет енгізу үшін қолданылады?
-
8. Кілтсөз (keyword) дегеніміз не?
2) SELECT және өрістер
-
9. «Orders» кестесінен тапсырыс нөмірін, соманы және күнді шығаратын SELECT сұранысын жазыңыз.
(Мысалы: onum, amt, odate.)
-
10. «Orders» кестесінен нөмірі 1001-ге тең сатушыға қатысты барлық жолдарды шығаратын сұраныс жазыңыз.
(Сатушы нөмірі өрісі: snum.)
-
11. «Salespeople» кестесінің бағандарын келесі ретпен шығаратын сұраныс жазыңыз: city, sname, snum, comm.
-
12. San Jose қаласындағы әрбір тапсырыс берушінің атымен бірге оның рейтингін (rating) шығаратын SELECT сұранысын жазыңыз.
-
13. «Orders» кестесінен барлық сатушылардың snum мәндерін ағымдағы ретімен, қайталанусыз шығаратын сұраныс жазыңыз.
(Нұсқау: DISTINCT.)
3) Шарттар және сүзгілер
-
14. Сомасы $1,000-нан аспайтын барлық тапсырыстарды шығаратын сұраныс құрыңыз.
-
15. Лондонда орналасқан, комиссиясы 0.10-нан жоғары барлық сатушылар үшін sname және city өрістерін шығаратын сұраныс жазыңыз.
-
16. Рейтингi 100 болатын, бірақ Римде (Rome) орналаспаған барлық тапсырыс берушілерді шығаратын «Customers» кестесіне сұраныс жазыңыз.
4) Логикалық өрнектер және сұранысты ықшамдау
-
17. Келесі сұраныстың нәтижесі қандай болады?
SELECT * FROM Orders WHERE (amt < 1000 OR NOT (odate = 10031990 AND cnum <> 2003)); -
18. Келесі сұраныстың нәтижесі қандай болады?
SELECT * FROM Orders WHERE NOT ((odate = 10031990 OR snum = 1006) AND amt = 1500); -
19. Келесі сұранысты қалай ықшам түрде жазуға болады?
SELECT snum, sname, city, comm FROM Salespeople WHERE (comm >= .12 OR comm <= .14);Жауапта логикалық шартты ықшамдаудың мағынасын түсіндіріп, баламалы шартты ұсыныңыз.
Тапсыру форматы
- Сұраныстарды SQL синтаксисіне сай жазыңыз (қажет болса, кесте/өріс атауларын дәл көрсетіңіз).
- 17–19 тапсырмаларда шарттың не істейтінін қысқаша сипаттап беріңіз.
- Сұраныстарда түсініктілік үшін жолдарды бөлуге және шегініс қолдануға болады.