Я программирую сайт и не могу правильно выполнить этот запрос.
У меня есть таблица, содержащая каналы
select * from `channels`
и у меня есть еще одна таблица, содержащая статистику просмотра каждой страницы сайта.
Чтобы получить все посещения определенного канала, я напишу
SELECT SUM(ip) AS visits FROM `log` where `module` = 'channels' and mid = '15'
где 15 соответствует идентификатору строки в таблице каналов.
Запрос, который мне нужно написать, должен использовать соединение с суммой для выбора * из каналов и добавления дополнительной ячейки (значения), чтобы получить количество посещений для каждого идентификатора в Channels.
От комментариев к ответам:
Таблица Channels содержит идентификаторы столбцов и имя. Таблица под названием Log содержит столбцы ip, Module, Mid. log.module = 'channel'; log.mid = канал.id. Каждый идентификатор канала (например, «15») может получить все свои посещения с помощью запроса SELECT SUM(ip) AS visits FROM log, где модуль = «каналы» и средний = «15».
Примерно:
CREATE TABLE Channels (ID INTEGER, Name CHAR(30), PRIMARY KEY ID);
CREATE TABLE Log (IP CHAR(16), Module CHAR(10), MID INTEGER REFERENCES Channels(ID));
Подробнее здесь: https://stackoverflow.com/questions/102 ... -row-using