@chel663

Что не так с запросом?

SELECT students.id, students.lastname 
  FROM students
    LEFT JOIN teachers ON students.id=teachers.emp_id
    LEFT JOIN teacher_assistants ON students.id=teacher_assistants.emp_id
    LEFT JOIN employee_name ON teachers.emp_id=employee_name.id 
      AND teacher_assistants.emp_id=employee_name.id
  WHERE name='Nikolai' AND name='Katerina'
  • Вопрос задан
  • 162 просмотра
Пригласить эксперта
Ответы на вопрос 3
ThunderCat
@ThunderCat
{PHP, MySql, HTML, JS, CSS} developer
С запросом все ок, а вот с тем кто составлял могу сказать что не так:
Если не читать документацию, а ориентироваться на свою "и так понятно" логику, то ничего хорошего не выйдет.
Хинт: Помогите Даше найти логику в строке:
WHERE name='Nikolai' AND name='Katerina'
Ответ написан
GigaLORDex
@GigaLORDex
Бизнес-Системный аналитик
1. Зачем вообще левые джоины, если выводятся данные только таблицы студентов?
2. Зачем соединение айдишника студента с айдишником учителя? (emp видимо employee)
3. AND -> OR
4. Хотелось бы увидеть постановку задачи
5. Хотелось бы увидеть ERD
Ответ написан
@exalon
.. WHERE name='Nikolai' AND name='Katerina'
скорее всего в ТЗ имя учителя Nikolai, имя ассистента ученика Katerina
WHERE teachers.name='Nikolai' AND teacher_assistants.name='Katerina'

а так да, удаляйте такеи вопросы
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы