Ahmed Ebrahim11 نشر منذ 10 ساعة أرسل تقرير نشر منذ 10 ساعة السلام عليكم اريد ان اسال ما الفرق بين ال queries التاليه select product_id,year as first_year, quantity, price from Sales where(product_id, year) in (select product_id, min(year) from Sales group by product_id) // تخرج حلا مختلف select product_id,min(year) as first_year, quantity, price from Sales اري انه لا فرق 1 اقتباس
0 Chihab Hedidi نشر منذ 9 ساعة أرسل تقرير نشر منذ 9 ساعة على الرغم من أن الجملتين قد تبدوان متشابهتين، إلا أنهما تنتجان نتائج مختلفة بسبب كيفية التعامل مع الأعمدة الإضافية بجانب الأعمدة المحسوبة، حيث في الإستعلام الأول يتم تحديد أول سنة لكل منتج باستخدام الاستعلام الداخلي، و يتم بعد ذلك مطابقة السجل بالكامل بناء على product_id, year مع النتيجة المحسوبة من الاستعلام الداخلي، و هذا يعني أنه يتم تحديد سجل واحد فقط لكل منتج يتوافق مع أصغر سنة و النتيجة تكون كل منتج سيظهر مرة واحدة مع بيانات quantity وprice التي تتوافق مع السنة الأولى. أما في الكود الثاني هنا يتم استخدام group by مع product_id، و يتم حساب أصغر سنة لكل منتج، ولكن الأعمدة الأخرى ليست ضمن الدالة التجميعية أو في عبارة group by، و في معظم قواعد البيانات، ستقوم قاعدة البيانات باختيار قيمة عشوائية أو غير محددة من الأعمدة الإضافية quantity وprice للسجلات المتعلقة بكل مجموعة. اقتباس
السؤال
Ahmed Ebrahim11
السلام عليكم
اريد ان اسال ما الفرق بين ال queries التاليه
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.