كان:ليس جدولًا فريدًا ::الآن:#1054 - عمود غير معروف - لا أستطيع أن أفهم لماذا؟
-
26-09-2019 - |
سؤال
أحاول ضم بعض الجداول معًا في MySQL، لكن يبدو أنني أتلقى خطأ يقول:#1066 - جدول/اسم مستعار ليس فريدًا:"وظائف_التقويم"
أريد حقًا أن يتم تحديد كل شيء من cal_events وبتات المستخدم وعمود الوجهة فقط من جدول الوظائف، ولكن يصبح "فارغًا" إذا لم تكن هناك أي وظيفة.يبدو أن الانضمام الصحيح يناسب الفاتورة ولكنه لا يعمل!هل أستطيع مساعدتك!؟
تحديث:
شكرًا للمساعدة في الاستعلام السابق، وأنا الآن على وشك القيام بذلك:
SELECT calendar_events.* , calendar_users.doctorOrNurse, calendar_users.passportName, calendar_jobs.destination
FROM `calendar_events` , `calendar_users`
RIGHT JOIN calendar_jobs ON calendar_events.jobID = calendar_jobs.jobID
WHERE `start` >= 0
AND calendar_users.userID = calendar_events.userID;
لكني الآن أتلقى خطأً يقول:#1054 - عمود غير معروف "calendar_events.jobID" في "الجملة"
ما هو هذا الوقت!؟
شكرًا لك مرة أخرى!
المحلول
يجب ألا تستخدم calendar_jobs
في البند من ، لأنك حددته بالفعل في Join. جرب هذا:
SELECT calendar_events.* , calendar_users.doctorOrNurse, calendar_users.passportName, calendar_jobs.destination
FROM `calendar_events` , `calendar_users`
RIGHT JOIN calendar_jobs ON calendar_events.jobID = calendar_jobs.jobID
WHERE `start` >=0
AND calendar_users.userID = calendar_events.userID
إجابة للتحديث:
يبدو أن جميع الأدلة تشير إلى أن العمود غير موجود في هذا الجدول :).
جرب هذا:
SELECT calendar_events.* , calendar_users.doctorOrNurse, calendar_users.passportName, calendar_jobs.destination
FROM `calendar_users`, `calendar_events`
RIGHT JOIN calendar_jobs ON calendar_events.jobID = calendar_jobs.jobID
WHERE `start` >=0
AND calendar_users.userID = calendar_events.userID
تم تبديل ترتيب الجداول الموجودة في From ، لأنك تنضم إلى الأحداث مع الوظائف.
نصائح أخرى
تشغيل هذا: show create table calendar_events;
، ونشر النتائج هنا.
نحتاج إلى رؤية بنية الجدول للإجابة على سؤالك الثاني.
لديك calendar_jobs
المدرجة مرتين في الاستعلام الخاص بك.
مرة واحدة في السطر الثاني ومرة واحدة في عبارة RIGHT JOIN.