"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > لماذا لا يمكنني استخدام الأسماء المستعارة للعمود في MySQL حيث الجمل؟

لماذا لا يمكنني استخدام الأسماء المستعارة للعمود في MySQL حيث الجمل؟

نشر في 2025-03-24
تصفح:790

Why Can't I Use Column Aliases in MySQL WHERE Clauses?

mysql where inlause and column alias قيود

باستخدام الأسماء المستعارة في العمود في MySQL حيث يؤدي البند إلى الخطأ "#1054 - عمود غير معروف في/كل/أي مساع فرعي". تشرح هذه المقالة السبب وتقدم أساليب بديلة.

يتطلب MySQL أسماء الأعمدة حيث تكون الجمل إما مباشرة من بنية الجدول أو مشتقة عبر ترميز DOT. لا يتم التعرف على أسماء المساواة في العمود ، الأسماء المؤقتة المخصصة أثناء معالجة الاستعلام.

وثائق MySQL تحظر هذا بشكل صريح. السبب هو ترتيب تنفيذ الاستعلام: يتم تقييم الشرط الذي يتم تقييمه قبل تعيين الأسماء المستعارة. لذلك ، يؤدي استخدام الاسم المستعار في الفقرة إلى سلوك غير محدد.

للتغلب على هذا ، استخدم شرط وجود. تم تصميم هذا البند لتصفية الصفوف بعد التجميع والتجميع ، مما يجعله مناسبًا عند التصفية على الأعمدة المحسوبة (مثل تلك التي تم إنشاؤها مع الأسماء المستعارة). في المواقف التي يلزم وجود اسم مستعار للتصفية ، يوفر استخدام الاسم المستعار في جملة وجود حل بديل قابل للتطبيق.

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3