كتابة استعلام SQL من وصف بالعربية بالذكاء الاصطناعي
استعلام SQL من وصف بالعربية: الاستعلام جاهزاً مع شرح أجزائه، وما يلزم التحقق منه قبل تشغيله على بيانات حقيقية.
بواسطة Ahmed EidClaude0 نسخة
متى تستخدم هذا البرومبت
- عند حاجتك لتقرير من قاعدة بيانات دون خبرة كافية بـ SQL.
- عند كتابة استعلام يجمع عدة جداول.
- عند تحسين استعلام بطيء.
نص البرومبت
أريد استعلام SQL يفعل: {{وصف المطلوب بالعربية}}. الجداول وأعمدتها: {{أسماء الجداول والأعمدة}}. نوع قاعدة البيانات: {{MySQL أو PostgreSQL أو غيرها}}. اعطني: الاستعلام جاهزاً، شرحاً لكل جزء منه، ما يجب أن أتحقق منه قبل تشغيله على بيانات حقيقية، نسخة تعرض عدد الصفوف المتأثرة أولاً إن كان الاستعلام يعدّل بيانات، والفهارس التي تجعله أسرع إن كان بطيئاً.
{{وصف المطلوب بالعربية}}{{أسماء الجداول والأعمدة}}{{MySQL أو PostgreSQL أو غيرها}}املأ المتغيرات ثم انسخ
أريد استعلام SQL يفعل: {{وصف المطلوب بالعربية}}. الجداول وأعمدتها: {{أسماء الجداول والأعمدة}}. نوع قاعدة البيانات: {{MySQL أو PostgreSQL أو غيرها}}. اعطني: الاستعلام جاهزاً، شرحاً لكل جزء منه، ما يجب أن أتحقق منه قبل تشغيله على بيانات حقيقية، نسخة تعرض عدد الصفوف المتأثرة أولاً إن كان الاستعلام يعدّل بيانات، والفهارس التي تجعله أسرع إن كان بطيئاً.كيف تستخدمه
- انسخ البرومبت بالزر أو املأ المتغيرات أولاً.
- الصقه في ChatGPT أو Claude أو Gemini.
- عدّل النتيجة أو أعد الطلب بتغيير المتغيرات.
مثال على النتيجة
المطلوب: العملاء الذين لم يشتروا منذ 90 يوماً مع قيمة آخر طلب.
SELECT c.id, c.name, MAX(o.created_at) AS last_order,
(SELECT total FROM orders WHERE customer_id = c.id ORDER BY created_at DESC LIMIT 1) AS last_total
FROM customers c
JOIN orders o ON o.customer_id = c.id
GROUP BY c.id, c.name
HAVING MAX(o.created_at) < NOW() - INTERVAL 90 DAY
ORDER BY last_order ASC;
الشرح: JOIN يربط العملاء بطلباتهم · MAX يجلب آخر تاريخ · HAVING يرشّح بعد التجميع لا قبله.
تحقّق قبل التشغيل: أن حالة الطلب لا تشمل الملغى، وأن created_at بتوقيت واحد.
فهرس مقترح: (customer_id, created_at) على جدول orders.نصائح للاستخدام
- شغّل الاستعلام بـ SELECT أولاً قبل أي UPDATE أو DELETE.
- اذكر نوع قاعدة البيانات؛ دوال التواريخ تختلف بين MySQL وPostgreSQL اختلافاً كبيراً.
- راجع شروط الترشيح بنفسك؛ استعلام صحيح نحوياً قد يجيب سؤالاً غير سؤالك.
النماذج الموصى بها
Claude
أسئلة شائعة
- هل أشغّل الاستعلام على قاعدة الإنتاج مباشرة؟
- لا؛ شغّله على نسخة أو بيئة اختبار، وإن اضطررت فاجعله SELECT فقط وبـ LIMIT في أول تجربة.
- لا أعرف أسماء أعمدتي بدقة؟
- اطلب أولاً استعلاماً يعرض بنية الجداول (SHOW COLUMNS أو information_schema)، ثم اكتب الاستعلام على الأسماء الحقيقية.