ترجمة آلية تحت المراجعة
أفلام
المصدر الأصليقائمة تنفيذ التمرين
تُحفظ علامات هذه القائمة على هذا الجهاز والمتصفح فقط. أنشئ حسابًا مفعّلًا لحفظ إنجاز التمرين في مسارك.
أفلام
التغييرات لعام 2026: 5.sql يتطلب الآن مطابقة الأفلام التي تبدأ بـ "Harry Potter و" (وليس فقط "Harry Potter"). 9.sql يتطلب الآن الإخراج عمودين (معرف واسم كل شخص)، وليس الأسماء فقط. إذا بدأت هذه المشكلة قبل عام 2026، فتأكد من تحديث استفساراتك وفقًا لذلك!

مشكلة بحاجة إلى حل
تم توفير ملف يسمى movies.db، قاعدة بيانات SQLite التي تقوم بتخزين البيانات منها موقع IMDb عن الأفلام والأشخاص الذين أخرجوها وقاموا ببطولتها وتقييماتها. اكتب استعلامات SQL للإجابة على الأسئلة المتعلقة بقاعدة بيانات الأفلام هذه.
تجريبي
البدء
بالنسبة لهذه المشكلة، ستستخدم قاعدة البيانات المقدمة لك من قبل موظفي CS50.
قم بتنزيل كود التوزيع
قم بتسجيل الدخول cs50.dev، انقر على نافذتك الطرفية، وقم بالتنفيذ cd بمفرده. يجب أن تجد أن مطالبة النافذة الطرفية الخاصة بك تشبه ما يلي:
$
التنفيذ التالي
wget https://cdn.cs50.net/2026/x/psets/7/movies.zip
من أجل تنزيل ملف ZIP يسمى movies.zip في مساحة الشيفرة الخاصة بك.
ثم نفذ
unzip movies.zip
لإنشاء مجلد يسمى movies. لم تعد بحاجة إلى ملف ZIP، حتى تتمكن من التنفيذ
rm movies.zip
ثم قم بالرد بـ "y" متبوعًا بـ Enter عند المطالبة لإزالة ملف ZIP الذي قمت بتنزيله.
الآن اكتب
cd movies
متبوعًا بـ Enter للانتقال إلى (i.e.، open) هذا الدليل. يجب أن تشبه مطالبتك الآن ما يلي.
movies/ $
تنفيذ ls بمفرده، ويجب أن تشاهد 13 ملفًا بتنسيق SQL، بالإضافة إلى movies.db.
إذا واجهت أي مشكلة، فاتبع نفس الخطوات مرة أخرى لترى ما إذا كان بإمكانك تحديد الخطأ الذي ارتكبته!
المواصفات
لكل مشكلة من المشاكل التالية، يجب عليك كتابة استعلام SQL واحد لإخراج النتائج المحددة بواسطة كل مشكلة. يجب أن تأخذ إجابتك شكل استعلام SQL واحد، على الرغم من أنه يمكنك دمج استعلامات أخرى داخل استعلامك. أنت لا ينبغي افترض أي شيء بخصوص idلأي أفلام أو أشخاص معينين: يجب أن تكون استفساراتك دقيقة حتى لو كان id من أي فيلم أو شخص معين كان مختلفًا. أخيرًا، يجب أن يُرجع كل استعلام فقط البيانات اللازمة للإجابة على السؤال: إذا كانت المشكلة تطالبك فقط بإخراج أسماء الأفلام، على سبيل المثال، فيجب ألا يُخرج استعلامك أيضًا سنة إصدار كل فيلم.
نرحب بمراجعة نتائج استفساراتك مقابلها شجونه نفسه، ولكن عليك أن تدرك أن التقييمات الموجودة على موقع الويب قد تختلف عن تلك الموجودة movies.db، لأنه ربما تم الإدلاء بعدد أكبر من الأصوات منذ أن قمنا بتنزيل البيانات!
- في
1.sql، اكتب استعلام SQL لسرد عناوين جميع الأفلام التي تم إصدارها في عام 2008.- يجب أن يُخرج استعلامك جدولًا يحتوي على عمود واحد لعنوان كل فيلم.
- في
2.sql، اكتب استعلام SQL لتحديد سنة ميلاد إيما ستون.- يجب أن يُخرج استعلامك جدولاً يحتوي على عمود واحد وصف واحد (بدون احتساب الرأس) يحتوي على سنة ميلاد إيما ستون.
- قد تفترض أن هناك شخصًا واحدًا فقط في قاعدة البيانات يحمل اسم Emma Stone.
- في
3.sql، اكتب استعلام SQL لسرد عناوين جميع الأفلام التي لها تاريخ إصدار في عام 2018 أو بعده، بالترتيب الأبجدي.- يجب أن يُخرج استعلامك جدولًا يحتوي على عمود واحد لعنوان كل فيلم.
- يجب تضمين الأفلام التي تم إصدارها في عام 2018، وكذلك الأفلام التي لها تواريخ إصدار في المستقبل.
- في
4.sql، اكتب استعلام SQL لتحديد عدد الأفلام ذات تقييم IMDb 10.0.- يجب أن يُخرج استعلامك جدولًا يحتوي على عمود واحد وصف واحد (بدون احتساب الرأس) يحتوي على عدد الأفلام ذات التقييم 10.0.
- في
5.sql، اكتب استعلام SQL لسرد العناوين وسنوات الإصدار لجميع أفلام Harry Potter، بالترتيب الزمني.- يجب أن يُخرج استعلامك جدولًا يحتوي على عمودين، واحد لعنوان كل فيلم والآخر لسنة إصدار كل فيلم.
- قد تفترض أن عنوان جميع أفلام هاري بوتر سيبدأ بكلمتي "هاري بوتر وذا"، وأنه إذا بدأ عنوان الفيلم بكلمتي "هاري بوتر وذا"، فهو فيلم هاري بوتر.
- في
6.sql، اكتب استعلام SQL لتحديد متوسط التقييم لجميع الأفلام التي تم إصدارها في عام 2012.- يجب أن يُخرج استعلامك جدولاً يحتوي على عمود واحد وصف واحد (بدون احتساب الرأس) يحتوي على متوسط التقييم.
- في
7.sql، اكتب استعلام SQL لسرد جميع الأفلام التي تم إصدارها في عام 2010 وتقييماتها، بترتيب تنازلي حسب التصنيف. بالنسبة للأفلام التي لها نفس التصنيف، قم بترتيبها أبجديًا حسب العنوان.- يجب أن يُخرج استعلامك جدولًا يحتوي على عمودين، واحد لعنوان كل فيلم والآخر لتصنيف كل فيلم.
- لا ينبغي تضمين الأفلام التي ليس لها تقييمات في النتيجة.
- في
8.sql، اكتب استعلام SQL لسرد أسماء جميع الأشخاص الذين لعبوا دور البطولة في Toy Story.- يجب أن يُخرج استعلامك جدولاً يحتوي على عمود واحد لاسم كل شخص.
- قد تفترض أن هناك فيلمًا واحدًا فقط في قاعدة البيانات يحمل عنوان Toy Story.
- في
9.sql، اكتب استعلام SQL لسرد معرف وأسماء جميع الأشخاص الذين لعبوا دور البطولة في فيلم تم إصداره في عام 2004، مرتبة حسب سنة الميلاد.- يجب أن يُخرج استعلامك جدولاً يحتوي على عمودين: واحد للمعرف والآخر لاسم كل شخص.
- يمكن إدراج الأشخاص الذين لديهم نفس سنة الميلاد بأي ترتيب.
- لا داعي للقلق بشأن الأشخاص الذين ليس لديهم سنة ميلاد مدرجة، طالما أن أولئك الذين لديهم سنة ميلاد مدرجون بالترتيب.
- إذا ظهر شخص ما في أكثر من فيلم في عام 2004، فيجب أن يظهر في نتائجك مرة واحدة فقط.
- في
10.sql، اكتب استعلام SQL لسرد أسماء جميع الأشخاص الذين قاموا بإخراج فيلم حصل على تقييم 9.0 على الأقل.- يجب أن يُخرج استعلامك جدولاً يحتوي على عمود واحد لاسم كل شخص.
- إذا قام شخص ما بإخراج أكثر من فيلم واحد وحصل على تقييم 9.0 على الأقل، فيجب أن تظهر في نتائجك مرة واحدة فقط.
- في
11.sql، اكتب استعلام SQL لسرد عناوين الأفلام الخمسة الأعلى تقييمًا (بالترتيب) التي لعب فيها تشادويك بوسمان دور البطولة، بدءًا من الأعلى تقييمًا.- يجب أن يُخرج استعلامك جدولًا يحتوي على عمود واحد لعنوان كل فيلم.
- قد تفترض أن هناك شخصًا واحدًا فقط في قاعدة البيانات يحمل اسم تشادويك بوسمان.
- في
12.sql، اكتب استعلام SQL لسرد عناوين جميع الأفلام التي لعب فيها كل من برادلي كوبر وجنيفر لورانس دور البطولة.- يجب أن يُخرج استعلامك جدولًا يحتوي على عمود واحد لعنوان كل فيلم.
- قد تفترض أن هناك شخصًا واحدًا فقط في قاعدة البيانات يحمل اسم برادلي كوبر.
- قد تفترض أن هناك شخصًا واحدًا فقط في قاعدة البيانات يحمل اسم جينيفر لورانس.
- في
13.sql، اكتب استعلام SQL لسرد أسماء جميع الأشخاص الذين لعبوا دور البطولة في فيلم شارك فيه كيفن بيكون أيضًا.- يجب أن يُخرج استعلامك جدولاً يحتوي على عمود واحد لاسم كل شخص.
- قد يكون هناك عدة أشخاص يُدعى Kevin Bacon في قاعدة البيانات. تأكد من اختيار Kevin Bacon المولود عام 1958 فقط.
- لا ينبغي إدراج كيفن بيكون نفسه في القائمة الناتجة.
تلميحات
فهم مخطط movies.db
عندما تتعامل مع قاعدة بيانات جديدة، فمن الأفضل أن تفهم أولاً مخطط. في النافذة الطرفية، قم بتشغيل
يحتوي الجدول sqlite3 movies.db حتى تتمكن من البدء في تنفيذ الاستعلامات على قاعدة البيانات.
أولاً، متى
يطالبك sqlite3 بتقديم استعلام، اكتب .schema ثم اضغط على زر الإدخال. سيؤدي هذا إلى إخراج
عبارات CREATE TABLE التي تم استخدامها لإنشاء كل جدول من الجداول في قاعدة البيانات. ومن خلال فحص تلك البيانات، يمكنك التعرف على الأعمدة الموجودة في كل جدول.
لاحظ أن
يتم استخدام كتلة movies على
عمود id الذي يحدد كل فيلم بشكل فريد، بالإضافة إلى أعمدة title من الفيلم و year الذي صدر فيه الفيلم. ال
يحتوي الجدول people أيضًا على
عمود id ، ويحتوي أيضًا على أعمدة لكل شخص name و birth سنة.
يتم تخزين تقييمات الأفلام في الوقت نفسه ratings الجدول. العمود الأول في الجدول هو movie_id: مفتاح خارجي يشير إلى id من movies الجدول. يحتوي باقي الصف على بيانات حول rating لكل فيلم وعدد votes حصل الفيلم على موقع IMDb.
أخيرًا،
يجب أن تقوم وظيفة stars و directors تعمل الجداول على مطابقة الأشخاص للأفلام التي مثلوا أو أخرجوا فيها. (فقط المدير يتم تضمين النجوم والمخرجين.) يحتوي كل جدول على عمودين فقط: movie_id و person_id، والتي تشير إلى فيلم وشخص محددين، على التوالي.
التحدي الذي أمامك هو كتابة استعلامات SQL للإجابة على مجموعة متنوعة من الأسئلة المختلفة عن طريق تحديد البيانات من واحد أو أكثر من هذه الجداول.
قم بتصميم استفساراتك بشكل متسق
انظر sqlstyle.guide للحصول على مؤشرات حول الأسلوب الجيد في SQL، خاصة عندما تصبح استعلاماتك أكثر تعقيدًا!
قائمة بعناوين جميع الأفلام التي صدرت عام 2008
تذكر أنه يمكنك تحديد عمود واحد (أو أكثر) من قاعدة البيانات باستخدام SELECT، وفقًا للمثال أدناه،
SELECT column0, column1 FROM table;
حيث column0 هو عنوان عمود واحد، و column1 هو عنوان آخر.
وتذكر أنه يمكنك تصفية الصفوف التي يتم إرجاعها في الاستعلام باستخدام التابع WHERE كلمة رئيسية، متبوعة بشرط. يمكنك استخدام =, >, <و مشغلين آخرين أيضًا.
SELECT column FROM table
WHERE condition;
انظر مرجع الكلمات الأساسية لـ SQL لبعض صيغ SQL التي قد تكون مفيدة!
تحديد سنة ميلاد إيما ستون
تذكر أن أ WHERE تقييم الشروط ليس فقط بالأرقام، ولكن أيضًا بالسلاسل.
قائمة بعناوين جميع الأفلام التي لها تاريخ إصدار في عام 2018 أو بعده، بالترتيب الأبجدي
حاول تقسيم هذا الاستعلام إلى خطوتين. أولاً، ابحث عن الأفلام التي لها تاريخ إصدار في عام 2018 أو بعده. ثم قم بترتيب عناوين هذه الأفلام حسب الترتيب الأبجدي.
للعثور على الأفلام التي لها تاريخ إصدار في عام 2018 أو بعده، تذكر أن الشرط في SQL يدعم استخدام العديد من العبارات الشائعة عوامل المقارنة، بما في ذلك >= لـ "أكبر من أو يساوي." تحقق لمعرفة ما إذا كان استعلامك يعرض العدد الصحيح من الأفلام لكل كيفية الاختبار.
أخيرًا، قم بفرز نتائج الاستعلام أبجديًا حسب العنوان. أذكر ذلك
يمكن لـ ORDER BY فرز البيانات حسب عمود في النتائج، وفقًا للمثال أدناه.
...
ORDER BY column;
تحديد عدد الأفلام الحاصلة على تقييم IMDb 10.0
لاحظ أن هذا السؤال لا يطرح عليك فردي أفلام بتقييم 10.0، ولكن لـ رقم من الأفلام الحاصلة على هذا التصنيف. بمعنى آخر، يجب عليك جمع ("تجميع") نتائج استعلامك في رقم واحد (عدد الصفوف). تذكر أن SQL يدعم "وظيفة التجميع" التي تسمى COUNT، والذي يمكنك استخدامه في عمود وفقًا للمثال أدناه.
SELECT COUNT(column)
FROM table;
قائمة بالعناوين وسنوات الإصدار لجميع أفلام هاري بوتر، بالترتيب الزمني
بالنسبة لهذا الاستعلام، من المحتمل أنك تريد الاستفادة من SQL LIKE الكلمة الأساسية. أذكر ذلك
يمكن لـ LIKE الاستفادة مما يسمى "أحرف البدل"، مثل %، من شأنه أن يطابق أي حرف (أو تسلسل منه).
SELECT column0, column1
FROM table
WHERE column1 LIKE pattern;
تحديد متوسط التقييم لجميع الأفلام التي تم إصدارها في عام 2012
إليك مثال آخر للاستعلام الذي ستحتاج فيه إلى تجميع البيانات. خذ بعين الاعتبار SQL AVG دالة التجميع لحساب المتوسط.
ضع في اعتبارك أيضًا أن هذا الاستعلام يستخدم البيانات المخزنة في جدولين منفصلين: ratings و movies. تذكر أنه - طالما أن أحد الجداول يحتوي على مفتاح خارجي يطابق عمودًا في جدول آخر - يمكنك دمج جدولين باستخدام SQL JOIN الكلمة الأساسية. لاستخدام JOIN ، يجب عليك تحديد الجدول الذي ترغب في الانضمام إليه والعمود الذي تريد الانضمام إليه.
SELECT column0
FROM table0
JOIN table1 ON table0.column1 = table1.column2
قائمة بجميع الأفلام التي تم إصدارها في عام 2010 وتقييماتها، بترتيب تنازلي حسب التقييم
تذكر ذلك
يمكن ORDER BY ليس من الضروري دائمًا الفرز بترتيب تصاعدي. يمكنك تحديد فرز نتائجك تنازلي الترتيب عن طريق الإلحاق DESC.
...
ORDER BY column DESC;
قم بإدراج أسماء جميع الأشخاص الذين لعبوا دور البطولة في Toy Story
عندما ترى استعلامًا أكثر تعقيدًا مثل هذا الاستعلام، فمن الأفضل تقسيمه إلى أجزاء أصغر. في النهاية، يجب أن يصل استفسارك إلى قائمة الأسماء، كما هو موضح أدناه.
-- Select names
SELECT name
FROM people
WHERE ...
ولكن ما هي أفضل طريقة للوصول إلى أسماء أولئك الذين لعبوا دور البطولة في Toy Story؟ اعتبر أن people الجدول وحده لا يحتوي على هذه المعلومات (ولكن stars قد يكون الجدول!). في الواقع،
يجمع الجدول stars بين عمودين، person_id و movie_id: أي شخص لديه person_id المرتبط بـ Toy Story movie_id لعب دور البطولة في فيلم Toy Story.
-- Select names
SELECT name
FROM people
WHERE ...
-- Select person IDs
SELECT person_id
FROM stars
WHERE movie_id = ...
الخطوة الطبيعية التالية إذن هي العثور على معرف فيلم Toy Story.
-- Select names
SELECT name
FROM people
WHERE ...
-- Select person IDs
SELECT person_id
FROM stars
WHERE movie_id = ...
-- Find Toy Story's ID
SELECT id
FROM movies
WHERE title = 'Toy Story';
بالطبع، لقد كتبت ثلاثة حاليًا منفصل استعلامات. لكن لاحظ أن بعض الاستعلامات (الاستعلامين الأولين) سيتم إكمالها من خلال تضمين نتائج الاستعلام الموجودة أسفلها مباشرةً. تسمى عملية إنشاء استعلام يعتمد على نتائج "الاستعلام الفرعي" باستعلامات "التداخل". إنه تلميح تمامًا، ولكن إليك طريقة واحدة لتداخل الاستعلامات المذكورة أعلاه!
-- Select names
SELECT name
FROM people
WHERE id IN
(
-- Select person IDs
SELECT person_id
FROM stars
WHERE movie_id = (
-- Select Toy Story's ID
SELECT id
FROM movies
WHERE title = 'Toy Story'
)
);
قم بإدراج معرفات وأسماء جميع الأشخاص الذين لعبوا دور البطولة في فيلم صدر عام 2004، مرتبة حسب سنة الميلاد
لاحظ أن هذا الاستعلام، مثل الاستعلام السابق، يتطلب منك استخدام بيانات من جداول متعددة. تذكر أنه يمكنك "تداخل" الاستعلامات في SQL، مما يسمح لك بتقسيم الاستعلام الأكبر إلى استعلام أصغر. ربما يمكنك كتابة استفسارات إلى ...
- ابحث عن معرفات الأفلام التي تم إصدارها عام 2004
- ابحث عن معرفات الأشخاص الذين لعبوا دور البطولة في تلك الأفلام
- ابحث عن معرفات وأسماء الأشخاص الذين لديهم معرفات هؤلاء الأشخاص
بعد ذلك، حاول دمج هذه الاستعلامات للوصول إلى استعلام واحد يعرض جميع المعرفات وأسماء الأشخاص الذين لعبوا دور البطولة في فيلم تم إصداره في عام 2004. فكر في كيفية ترتيب نتائج استعلامك.
كملاحظة ختامية، ضع في اعتبارك أنه يمكن لعدة أشخاص الحصول على نفس الاسم. على الرغم من أنه يجب أن يظهر كل شخص في نتائجك مرة واحدة فقط، إلا أن النجمتين اللتين تحملان نفس الاسم لا تعني بالضرورة أنهما نفس الشخص.
قم بإدراج أسماء جميع الأشخاص الذين قاموا بإخراج فيلم حصل على تقييم 9.0 على الأقل
لاحظ أن هذا الاستعلام، مثل الاستعلام السابق، يتطلب منك استخدام بيانات من جداول متعددة. تذكر أنه يمكنك "تداخل" الاستعلامات في SQL، مما يسمح لك بتقسيم الاستعلام الأكبر إلى استعلام أصغر. ربما يمكنك كتابة استفسارات إلى ...
- ابحث عن معرفات الأفلام ذات التقييم 9.0 على الأقل
- ابحث عن معرفات الأشخاص الذين أخرجوا تلك الأفلام
- ابحث عن أسماء الأشخاص الذين لديهم معرفات هؤلاء الأشخاص
بعد ذلك، حاول دمج هذه الاستعلامات للوصول إلى استعلام واحد يعرض أسماء جميع الأشخاص الذين قاموا بإخراج فيلم حصل على تقييم 9.0 على الأقل.
قم بإدراج عناوين الأفلام الخمسة الأعلى تقييمًا (بالترتيب) التي لعب فيها تشادويك بوسمان دور البطولة، بدءًا من الأفلام الأعلى تقييمًا
لاحظ أن هذا الاستعلام، مثل الاستعلام السابق، يتطلب منك استخدام بيانات من جداول متعددة. تذكر أنه يمكنك "تداخل" الاستعلامات في SQL، مما يسمح لك بتقسيم الاستعلام الأكبر إلى استعلام أصغر. ربما يمكنك كتابة استفسارات إلى ...
- ابحث عن هوية تشادويك بوسمان
- ابحث عن معرفات الأفلام المرتبطة بمعرف تشادويك بوسمان
- ابحث عن عناوين الأفلام بمعرفات الأفلام تلك
بعد ذلك، حاول دمج هذه الاستعلامات للوصول إلى استعلام واحد يُرجع عناوين أفلام تشادويك بوسمان.
من هناك، ستحتاج إلى تحديد تقييمات تلك العناوين وفرز تلك العناوين حسب التصنيف، بترتيب تنازلي. فكر في كيفية دمج جدول ذي صلة (على الأرجح ratings!) وترتيب النتائج حسب العمود ذي الصلة.
أخيرًا، اقرأ عن SQL
الكلمة الأساسية LIMIT ، والتي ستعيد الصفوف \(n\) العليا في الاستعلام.
قائمة بعناوين جميع الأفلام التي لعب فيها كل من برادلي كوبر وجينيفر لورانس دور البطولة
لاحظ أن هذا الاستعلام، مثل الاستعلام السابق، يتطلب منك استخدام بيانات من جداول متعددة. تذكر أنه يمكنك "تداخل" الاستعلامات في SQL، مما يسمح لك بتقسيم الاستعلام الأكبر إلى استعلام أصغر. ربما يمكنك كتابة استفسارات إلى ...
- ابحث عن معرف برادلي كوبر
- ابحث عن هوية جينيفر لورانس
- ابحث عن معرفات الأفلام المرتبطة بمعرف برادلي كوبر
- ابحث عن معرفات الأفلام المرتبطة بمعرف جينيفر لورانس
- ابحث عن عناوين الأفلام من معرفات الأفلام المرتبطة بها كلاهما برادلي كوبر وجنيفر لورانس
بعد ذلك، حاول دمج هذه الاستعلامات للوصول إلى استعلام واحد يُرجع الأفلام التي لعب فيها كل من برادلي كوبر وجينيفر لورانس دور البطولة.
تذكر أنه يمكنك إنشاء شروط مركبة في SQL باستخدام AND أو OR.
قم بإدراج أسماء جميع الأشخاص الذين لعبوا دور البطولة في فيلم شارك فيه كيفن بيكون أيضًا
لاحظ أن هذا الاستعلام، مثل الاستعلام السابق، يتطلب منك استخدام بيانات من جداول متعددة. تذكر أنه يمكنك "تداخل" الاستعلامات في SQL، مما يسمح لك بتقسيم الاستعلام الأكبر إلى استعلام أصغر. ربما يمكنك كتابة استفسارات إلى ...
- ابحث عن هوية كيفن بيكون (المولود عام 1958!)
- ابحث عن معرفات الأفلام المرتبطة بمعرف Kevin Bacon
- ابحث عن معرفات الأشخاص المرتبطين بمعرفات الأفلام هذه
- ابحث عن أسماء الأشخاص الذين لديهم معرفات هؤلاء الأشخاص
بعد ذلك، حاول دمج هذه الاستعلامات للوصول إلى استعلام واحد يُرجع أسماء جميع الأشخاص الذين لعبوا دور البطولة في فيلم قام فيه Kevin Bacon أيضًا بدور البطولة. ضع في اعتبارك أنك سترغب في استبعاد كيفن بيكون نفسه من النتائج!
الإرشادات التفصيلية
الاستخدام
لاختبار استعلاماتك في VS Code، يمكنك الاستعلام عن قاعدة البيانات عن طريق تشغيل
$ cat filename.sql | sqlite3 movies.db
حيث filename.sql هو الملف الذي يحتوي على استعلام SQL الخاص بك.
يمكنك أيضًا الجري
$ cat filename.sql | sqlite3 movies.db > output.txt
لإعادة توجيه مخرجات الاستعلام إلى ملف نصي يسمى output.txt. (قد يكون هذا مفيدًا للتحقق من عدد الصفوف التي يتم إرجاعها بواسطة الاستعلام الخاص بك!)
كيفية الاختبار
بينما check50 متاح لهذه المشكلة، ننصحك بدلاً من ذلك باختبار الشيفرة الخاصة بك بنفسك لكل مما يلي. يمكنك الركض sqlite3 movies.db لتشغيل استعلامات إضافية على قاعدة البيانات للتأكد من صحة النتيجة.
إذا كنت تستخدم
قاعدة بيانات movies.db المتوفرة في توزيع مجموعة المشكلات هذه، يجب أن تجدها
- جاري التنفيذ
1.sqlينتج عنه جدول يحتوي على عمود واحد و10647 صفًا. - جاري التنفيذ
2.sqlينتج عنه جدول يحتوي على عمود واحد وصف واحد. - جاري التنفيذ
3.sqlينتج عنه جدول يحتوي على عمود واحد و154,665 صفًا. - جاري التنفيذ
4.sqlينتج عنه جدول يحتوي على عمود واحد وصف واحد. - جاري التنفيذ
5.sqlينتج عنه جدول مكون من عمودين و18 صفًا. - جاري التنفيذ
6.sqlينتج عنه جدول يحتوي على عمود واحد وصف واحد. - جاري التنفيذ
7.sqlينتج عنه جدول يحتوي على عمودين و7386 صفًا. - جاري التنفيذ
8.sqlينتج عنه جدول يحتوي على عمود واحد و10 صفوف. - جاري التنفيذ
9.sqlينتج عنه جدول يحتوي على عمودين و36,219 صفًا. - جاري التنفيذ
10.sqlينتج عنه جدول يحتوي على عمود واحد و4675 صفًا. - جاري التنفيذ
11.sqlينتج عنه جدول يحتوي على عمود واحد و5 صفوف. - جاري التنفيذ
12.sqlينتج عنه جدول يحتوي على عمود واحد و4 صفوف. - جاري التنفيذ
13.sqlينتج عنه جدول يحتوي على عمود واحد و550 صفًا.
لاحظ أن عدد الصفوف لا يتضمن صفوف الرؤوس التي تعرض أسماء الأعمدة فقط.
إذا كان استعلامك يعرض عددًا من الصفوف التي تختلف قليلًا عن الناتج المتوقع، فتأكد من أنك تتعامل مع التكرارات بشكل صحيح! بالنسبة للاستعلامات التي تطلب قائمة بالأسماء، لا ينبغي إدراج أي شخص مرتين، ولكن يجب إدراج شخصين مختلفين لهما نفس الاسم.
صحة
check50 cs50/problems/2026/x/movies
كيفية الإرسال
في جهازك الطرفي، قم بتنفيذ ما يلي لإرسال عملك، والإجابة على المطالبات التي تظهر أيضًا.
submit50 cs50/problems/2026/x/movies
شكر وتقدير
المعلومات مقدمة من شجونه (imdb.com). تستخدم بإذن.