tl: dr Эта команда не работает :(
SELECT * FROM homework WHERE crn =138628 AND WHERE id NOT IN (SELECT id FROM studentHw WHERE codigoAlumno="214521671");
Извините за испанские имена
Я хочу сравнить две таблицы, чтобы найти, какой идентификатор отсутствует в другой таблице. У меня две таблицы:
Домашнее задание Таблица: с кодом группы (crn) и идентификатором (укажите домашнюю работу)
+------------+------------+--------+-----+
| titulo | fecha | crn | id |
+------------+------------+--------+-----+
| Tarea 1 | 2018-03-14 | 138628 | 25 |
| Tarea 2 | 2018-03-14 | 138628 | 158 |
| Tarea 3 | 2018-03-14 | 138628 | 159 |
| Tarea 1 | 2018-03-15 | 125488 | 162 |
| Tarea 2 | 2018-03-15 | 125488 | 163 |
+------------+------------+--------+-----+
SELECT * FROM homework ;
Я хочу выбрать только элементы с crn равным 138628 и после сравнения с другой таблицей с именем studentHW (поставленная домашняя работа):
studentHW
+-----+--------------+---------+--------+
| id | codigoAlumno | entrega | crn |
+-----+--------------+---------+--------+
| 25 | 214521671 | si | 138628 |
| 158 | 214521671 | si | 138628 |
| 159 | 214521671 | si | 138628 |
+-----+--------------+---------+--------+
SELECT * FROM studentHw;
Я хочу выбрать все строки в Домашнем задании, которые не находятся в studentHomework
Я проверяю stackoverflow для ответа, который нашел это...
Mysql: выберите строки из таблицы, которые не находятся в другом
И я пытаюсь выполнить следующую команду, но она не работает:
SELECT * FROM homework WHERE crn =138628 AND WHERE id NOT IN (SELECT id FROM studentHw WHERE codigoAlumno="214521671");
codigoalumno - идентификатор студента
Я получаю эту ошибку:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE id NOT IN (SELECT id FROM studentHw)' at line 1
Ключевое слово WHERE следует использовать только один раз в запросе.
Правильный код:
SELECT * FROM homework WHERE crn =138628 AND id NOT IN (SELECT id FROM studentHw WHERE codigoAlumno="214521671");
AND WHERE
НЕ SQL.