Что случилось с этим запросом:Mysql COUNT (*) на нескольких столах
SELECT co.*, mod.COUNT(*) as moduleCount, vid.COUNT(*) as vidCount
FROM courses as co, modules as mod, videos as vid
WHERE mod.course_id=co.id AND vid.course_id=co.id ORDER BY co.id DESC
Другими словами, как я могу сделать это так с каждой записью возвращается из «курсов», есть дополнительный столбец под названием ' modCount ', который показывает количество записей в таблице модулей для этого course_id, а другое -' vidCount ', которое делает то же самое для таблицы видео.
Ошибка:
Error Number: 1064
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 ') as moduleCount, vid.COUNT() as vidCount FROM courses as co, ' at line 1
расход - это важная вещь, о которой нужно помнить, особенно с несколькими подзапросами. – cori
У вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования рядом с модулем WHERE mod.course_id = co.id в качестве moduleCount, (SELECT COUNT (*) 'в строке 2 –
Осталось "WHERE" там не было. У вас есть еще одна попытка: если это не работает, ваш сервер MySQL не поддерживает скалярные подзапросы. Какую версию вы используете? –