DB1-Assignment3.pdf

‫مجموعه تمرینهای سری اول درس پایگاه دادهها (‪)۱‬‬
‫نحوهی تحویل ‪٘ :‬ؼخ‪ ٝ‬واغزی تٕشیٗ خ‪ٛ‬د سا (تایپؿذ‪ ٜ‬یا دػت٘‪ٛ‬یغ) ت‪ ٝ‬اتاق ‪( 8۰5‬آصٔایـٍا‪ ٜ‬دوتش ٔیشیاٖ) تح‪ٛ‬یُ د‪ٞ‬یذ‪ .‬فشػتادٖ تٕشیٗ ت‪ٝ‬‬
‫ص‪ٛ‬ست ایٕیُ پزیشفت‪٘ ٝ‬یؼت‪.‬‬
‫‪ .I‬تمرینهای اصلی‬
‫‪ )1‬‫دس یه ٔحیػ عّٕیاتي د‪ ٚ‬صیشٔحیػ ‪ٚ‬ج‪ٛ‬د داسد ‪ ٚ‬دس ‪ٞ‬ش صیشٔحیػ‪٘ ،‬یاص‪ٞ‬ای اؼالعاتي واستش ٘اظش ت‪ٛ٘ ٝ‬عٔ‪ٛ‬ج‪ٛ‬دیت‪ٞ‬ای صیش اػت‫‪:‬‬
‫‪ ‬‫واستش دس صیشٔحیػ‪ٔ :1‬ماِ‪ٔ ،ٝ‬جّ‪ ،ٝ‬پظ‪ٞٚ‬ـٍش‫‪.‬‬
‫‪ ‬‫واستش دس صیشٔحیػ‪ :2‬وتاب‪ٛٔ ،‬ظ‪ٛ‬ع‪ٔ ،‬ؤِف‫‪.‬‬
‫‫پایٍا‪ ٜ‬داد‪ٜٞ‬ای جذ‪ِٚ‬ي ‪ٞ‬شیه اص صیشٔحیػ‪ٞ‬ا سا ؼشاحي ‪ ٚ‬ؿٕای ػاد‪ٜ‬ؿذ‪ٜ‬ی آ٘شا ت‪ٛٙ‬یؼیذ‫‪.‬‬
‫‪ )2‬‫دس یه ٔشوض ٘ـش دا٘ـٍا‪ٞ‬ي‪ ،‬د‪ٛ٘ ٚ‬عٔ‪ٛ‬ج‪ٛ‬دیت وتاب ‪ ٚ‬عع‪ٔ ٛ‬شوض ٘ـش سا دس ٘ظش ٔيٌیشیٓ‪ .‬پ‪ٙ‬ج ٘‪ٛ‬عاستثاغ تیٗ ایٗ د‪ٛ٘ ٚ‬عٔ‪ٛ‬ج‪ٛ‬دیت‫‬
‫تاصؿ‪ٙ‬اػي وشد‪ ،ٜ‬پایٍا‪ٜ‬داد‪ٜٞ‬ای جذ‪ِٚ‬ي ایٗ ٔحیػ سا ؼشاحي ‪ ٚ‬ؿٕای ػاد‪ٜ‬ؿذ‪ٜ‬ی آ٘شا ت‪ٛٙ‬یؼیذ‫‪.‬‬
‫‪ )3‬‫تا ت‪ٛ‬ج‪ ٝ‬ت‪ٕٛ٘ ٝ‬داس ‪ER‬‫داد‪ٜ‬ؿذ‪ ،ٜ‬پایٍا‪ٜ‬داد‪ ٜ‬جذ‪ِٚ‬ي سا ؼشاحي وشد‪ ٚ ٜ‬ت‪ ٝ‬پشػؾ‪ٞ‬ای صیش دس ‪SQL‬‫پاػخ د‪ٞ‬یذ ‪:‬‬
‫(‪) 1‬‬
‫‪ ‬‫ؿ‪ٟ‬ش ٔحُ اجشای پش‪ٚ‬ط‪ٜٞ‬ایي سا و‪ ٝ‬دس آ٘‪ٟ‬ا لؽعات ‪p1‬‫یا ‪p2‬‫ت‪ٛ‬ػػ ‪s3‬‫ت‪ٟ‬ی‪ ٝ‬ؿذ‪ ،ٜ‬تذ‪ٞ‬یذ‫‪.‬‬
‫‪ ‬‫ٔیاٍ٘یٗ ٔمذاس ت‪ٟ‬ی‪ٝ‬ؿذ‪ ٜ‬اص ‪ٞ‬ش لؽع‪ ٝ‬سا تذ‪ٞ‬یذ‫‪.‬‬
‫‪ ‬‫وُ ٔمذاس لؽعات ت‪ٝ‬واسسفت‪ ٝ‬دس پش‪ٚ‬ط‪j1 ٜ‬‫سا تذ‪ٞ‬یذ‪.‬‫‬
‫‪ ‬‫ؿٕاس‪٘ ٚ ٜ‬اْ ت‪ٟ‬ی‪ٝ‬و‪ٙٙ‬ذٌاٖ داسای ٔمذاس وٕی‪ٚ ٝٙ‬ظعیت سا تذ‪ٞ‬یذ‪ .‬جذ‪ َٚ‬ج‪ٛ‬اب س‪ٚ‬ی ٘اْ ٔشتة ؿ‪ٛ‬د‫‪.‬‬
‫‪ ‬‫جذ‪ِٚ‬ي تعشیف و‪ٙ‬یذ ‪ ٚ‬دس آٖ ؿٕاس‪٘ ٚ ٜ‬اْ ‪ٞ‬ش پش‪ٚ‬ط‪ٔ ٚ ٜ‬یاٍ٘یٗ ٔمذاس لؽع‪ٝ‬ی تىاسسفت‪ ٝ‬دس ‪ٞ‬شیه سا تذ‪ٞ‬یذ‪.‬‫‬
‫‪ ‬‫٘اْ ت‪ٟ‬ی‪ٝ‬و‪ٙٙ‬ذٌا٘ي سا تذ‪ٞ‬یذ و‪ ٝ‬دس تیؾ اص د‪ ٚ‬پش‪ٚ‬ط‪ ٜ‬لؽع‪ ٝ‬ت‪ٟ‬ی‪ ٝ‬وشد‪ ٜ‬تاؿ‪ٙ‬ذ (یه تاس ت‪ ٝ‬وٕه ‪ ٚ count‬یه تاس تذ‪.)count ٖٚ‬‬
‫‪ ‬ؿٕاس‪ ٚ ٜ‬وُ ٔمذاس لؽعات ت‪ٟ‬ی‪ٝ‬ؿذ‪ٜ‬ی ت‪ٟ‬ی‪ٝ‬و‪ٙٙ‬ذٌا٘ي سا تذ‪ٞ‬یذ و‪ ٝ‬دس تیؾ اص د‪ ٚ‬پش‪ٚ‬ط‪ ،ٜ‬لؽع‪ ٝ‬ت‪ٟ‬ی‪ ٝ‬وشد‪ٜ‬ا٘ذ‪.‬‬
‫‪ ‬‫٘اْ ‪ٔ ٚ‬مذاس ‪ٚ‬ظعیت ت‪ٟ‬ی‪ٝ‬و‪ٙٙ‬ذٌاٖ لؽع‪ٝ‬ی ‪p2‬‫سا تذ‪ٞ‬یذ‪.‬‫‬
‫‪‬‬
‫و‪ٙ‬جىا‪ٚ‬ی‪ :‬ایٗ پشػؾ ت‪ ٝ‬چ‪ٙ‬ذ س‪ٚ‬ؽ لاتُ ا٘جاْ اػت‪.‬‫‬
‫‪ ‬ؿٕاس‪ٞ ٜ‬ش پش‪ٚ‬ط‪ٔ ٚ ٜ‬یاٍ٘یٗ ‪ٚ‬صٖ لؽعات ت‪ٟ‬ی‪ٝ‬ؿذ‪ ٜ‬دس آٖ سا تذ‪ٞ‬یذ (یه تاس تا عٍّٕش ٌش‪ٜٚ‬ت‪ٙ‬ذی – ‪ ٚ – Group By‬یه تاس تذ‪ ٖٚ‬آٖ‪.‬‬
‫دلت و‪ٙ‬یذ و‪ ٝ‬اٌش یه لؽع‪ ٝ‬د‪ ٚ‬تاس دس یه پش‪ٚ‬ط‪ ٜ‬ت‪ٟ‬ی‪ ٝ‬ؿذ‪ ٜ‬تاؿذ‪ ،‬فمػ یه تاس دس ٔحاػث‪ٝ‬ی ٔیاٍ٘یٗ ٔ‪ٙ‬ظ‪ٛ‬س ٔيؿ‪ٛ‬د)‪.‬‬
‫‪ ‬ؿٕاس‪ٞ ٜ‬ش پش‪ٚ‬ط‪ٔ ٚ ٜ‬یاٍ٘یٗ ‪ٚ‬صٖداس ‪ٚ‬صٖ لؽعات ت‪ٟ‬ی‪ٝ‬ؿذ‪ ٜ‬دس آٖ سا تذ‪ٞ‬یذ (ٔ‪ٙ‬ظ‪ٛ‬س اص ٔیاٍ٘یٗ ‪ٚ‬صٖداس عثاست‬
‫)‬
‫(∑‬
‫∑‬
‫اػت)‪.‬‬
‫‪ ‬ؿٕاس‪ ٜ‬ت‪ٟ‬ی‪ٝ‬و‪ٙٙ‬ذٌا٘ي سا تذ‪ٞ‬یذ و‪ ٝ‬تٕاْ لؽعات آتي سً٘ سا ت‪ٟ‬ی‪ ٝ‬وشد‪ٜ‬ا٘ذ‪.‬‬
‫‪ ‬ؿٕاس‪ ٜ‬ت‪ٟ‬ی‪ٝ‬و‪ٙٙ‬ذٌا٘ي سا تذ‪ٞ‬یذ و‪ ٝ‬تشای ‪ٞ‬یچىذاْ اص پش‪ٚ‬ط‪ٜٞ‬ای ؿ‪ٟ‬ش ‪ c1‬لؽع‪ ٝ‬ت‪ٟ‬ی‪٘ ٝ‬ىشد‪ ٜ‬تاؿ‪ٙ‬ذ (یه تاس ت‪ ٝ‬وٕه صیشپشػؾ (پشػؾ‬
‫دس‪٘ٚ‬ي) ‪ ٚ‬یه تاس تذ‪ ٖٚ‬صیشپشػؾ)‪.‬‬
‫‪٘ ‬اْ ت‪ٟ‬ی‪ٝ‬و‪ٙٙ‬ذٌا٘ي سا تذ‪ٞ‬یذ و‪ ٝ‬فمػ تشای پش‪ٚ‬ط‪ٜٞ‬ای ‪ٕٞ‬ـ‪ٟ‬ش خ‪ٛ‬د‪ ،‬لؽع‪ ٝ‬ت‪ٟ‬ی‪ٝ‬وشد‪ ٜ‬تاؿ‪ٙ‬ذ‪.‬‬
‫‪٘ ‬اْ ت‪ٟ‬ی‪ٝ‬و‪ٙٙ‬ذٌا٘ي سا تذ‪ٞ‬یذ و‪ ٝ‬تشای تٕاْ پش‪ٚ‬ط‪ٜٞ‬ای ‪ٕٞ‬ـ‪ٟ‬ش خ‪ٛ‬د‪ ،‬لؽع‪ ٝ‬ت‪ٟ‬ی‪ٝ‬وشد‪ ٜ‬تاؿ‪ٙ‬ذ‪.‬‬
‫‪٘ ‬اْ پش‪ٚ‬ط‪ٜٞ‬ایي سا تذ‪ٞ‬یذ و‪ ٝ‬تٕاْ لؽعات آتي ت‪ٟ‬ی‪ ٝ‬ؿذ‪ ٜ‬ت‪ٛ‬ػػ ‪ ،s1‬دس آٖ ت‪ٟ‬ی‪ ٝ‬ؿذ‪ ٜ‬تاؿ‪ٙ‬ذ‪.‬‬
‫‪ ‬ؿٕاس‪ ٜ‬پش‪ٚ‬ط‪ٜٞ‬ایي سا تذ‪ٞ‬یذ و‪ ٝ‬حذالُ یه ت‪ٟ‬ی‪ٝ‬و‪ٙٙ‬ذ‪ ،ٜ‬د‪ ٚ‬لؽع‪ ٝ‬تا سً٘‪ٞ‬ای ٌ‪٘ٛ‬اٌ‪ ٖٛ‬تشای آٖ ت‪ٟ‬ی‪ ٝ‬وشد‪ ٜ‬تاؿذ (جذ‪ َٚ‬ج‪ٛ‬اب داسای‬
‫ؿٕاس‪ ٜ‬پش‪ٚ‬ط‪ٜٞ‬ای تىشاسی ٘ثاؿذ)‪.‬‬
‫‪ ‬ؿٕاس‪ ٜ‬ص‪ٚ‬ج پش‪ٚ‬ط‪ٜٞ‬ایي سا تذ‪ٞ‬یذ و‪ٞ ٝ‬یچ لؽع‪ٝ‬ی ٔـتشوي دس آٖ‪ٞ‬ا ت‪ٟ‬ی‪٘ ٝ‬ـذ‪ ٜ‬تاؿذ‪.‬‬
‫‪ ‬ؿٕاس‪ ٜ‬ص‪ٚ‬ج پش‪ٚ‬ط‪ٜٞ‬ایي سا تذ‪ٞ‬یذ و‪ ٝ‬حذالُ ‪ 4‬لؽع‪ٝ‬ی ٔـتشن دس آٖ‪ٞ‬ا ت‪ٟ‬ی‪ ٝ‬ؿذ‪ ٜ‬تاؿ‪ٙ‬ذ (ت‪ ٝ‬د‪ ٚ‬س‪ٚ‬ؽ)‪.‬‬
‫‪ )4‬‫آیا ٔیت‪ٛ‬اٖ دس ‪SQL‬‫عّٕیات رخیش‪ٞ‬ؼاصی سا تا دػت‪ٛ‬سات ‪UNION‬‫‪EXCEPT ٚ‬‫ا٘جاْ داد؟‫‬
‫‪ )5‬‫جذ‪ٔ R (A,B,C) َٚ‬فش‪ٚ‬ض اػت‪ .‬ػؽش‪ٞ‬ایي دس ایٗ جذ‪ٚ َٚ‬اسد و‪ٙ‬یذ ت‪٘ ٝ‬ح‪ٛ‬ی و‪ ٝ‬پاػخ د‪ ٚ‬پشػؾ صیش یىؼاٖ ٘ثاؿذ‫‪:‬‬
‫‪I. SELECT B, C‬‬
‫‫‬
‫‪FROM R‬‬
‫‫; '‪WHERE B='b1' OR C > 'c1‬‬
‫‪II. SELECT B, C‬‬
‫‪FROM R‬‫‬
‫‫'‪WHERE B='b1‬‫‬
‫‪UNION‬‬
‫‪SELECT B, C‬‫‬
‫‪FROM R‬‫‬
‫(‪) 2‬‬
‫‫‬
‫‫; '‪WHERE C > 'c1‬‫‬
‫‪ )6‬‫تا ت‪ٛ‬ج‪ ٝ‬ت‪ ٝ‬جذ‪ َٚ‬س‪ٚ‬تش‪٘ ،ٚ‬تیج‪ ٝ‬پاػخ پشػؾ صیش سا تذػت آ‪ٚ‬سیذ‪.‬‬
‫‪ )7‬‫تا اجشای وذأیه اص دػت‪ٛ‬سات صیش‪ ،‬واتاِ‪ٛ‬ي ػیؼتٓ تغییش ٔيو‪ٙ‬ذ‫‪:‬‬
‫‫‪ALTER TABLE ...‬‫‬
‫‫‪DROP TABLE ...‬‫‬
‫‫‪DELETE FROM ...‬‫‬
‫‪ )8‬‫تا اجشای دػت‪ٛ‬س ‪DROP TABLE‬‫چ‪ ٝ‬تغییشاتي دس ػیؼتٓ پذیذ ٔيآیذ؟ (حتياالٔىاٖ دس یىي اص ػیؼتٓ‪ٞ‬ای جذ‪ِٚ‬ي تشسػي‫‬
‫‫ؿ‪ٛ‬د)‬
‫و‪ٙ‬یذ‪.‬‬
‫‪ )9‬‫واتاِ‪ٛ‬ي یه ػیؼتٓ جذ‪ِٚ‬ي سا ٔؽاِع‪ٌ ٚ ٝ‬ضاسؽ ‫‬
‫‪ .II‬تمرینهای تکمیلی‬
‫‪ )1‬‫تا ت‪ٛ‬ج‪ ٝ‬ت‪ٕٛ٘ ٝ‬داس ‪ER‬‫ٔحیػ ‪Manufacturing‬‫اسائ‪ٝ‬ؿذ‪ ٜ‬دسوالع‪ ،‬پایٍا‪ٜ‬داد‪ٜٞ‬ای ؿيءٌشا سا ؼشاحي و‪ٙ‬یذ‫‪.‬‬
‫‫‬
‫چیؼت؟‬
‫‪ )2‬‫خص‪ٛ‬صیات ؼشاحي خ‪ٛ‬ب‬
‫‪ )3‬‫آیا ‪ ODM‬‫(تا ت‪ٛ‬ج‪ ٝ‬ت‪ٔ ٝ‬ف‪DM ْٟٛ‬‫و‪ ٝ‬دس والع ٌفت‪ ٝ‬ؿذ) ‪ٚ‬ج‪ٛ‬د داسد؟‫‬
‫‪ )4‬‫ٔؽاِع‪ٝ‬ی تیـتش دس ٔ‪ٛ‬سد ‪HDM‬‫‪NDM ٚ‬‫‬
‫‪ .III‬تمرینهای جبرانی مهندسی فایلها‬
‫‪ )1‬‫حذالُ ؿؾ ػاختاس تشویثي سا ٔؽاِع‪ٌ ٚ ٝ‬ضاسؽ و‪ٙ‬یذ‪.‬‫‬
‫(‪) 3‬‬
‫‪ .IV‬تمرینهای عمومی‬
‫‪ )1‬‫اص‪ َٛ‬س‪ٚ‬ؽ تحمیك دس عّ‪ٔ ْٛ‬حط ‪ ٚ‬دس حیؽ‪ٟٟ‬ای ف‪ٙ‬ي سا ٔؽاِع‪ ٝ‬و‪ٙ‬یذ‪.‬‫‬
‫(‪) 4‬‬