powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите запрос составить...
13 сообщений из 13, страница 1 из 1
Помогите запрос составить...
    #33038969
cctvUkraine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не могу составить скул запрос типа:
$sql = "SELECT country, SUM(one) AS sum FROM (SELECT country, SUM(one) AS sum, ip FROM stat WHERE date LIKE '$date%' GROUP BY ip) GROUP BY country";

Нужно из таблицы статистики вывести сколько человек (хостов) из каких стран заходило на сайт.
Запрос SELECT country, SUM(one) AS sum, ip FROM stat WHERE date LIKE '2005-04-27%' GROUP BY ip срабатывает, возвращает правильно, но возвращает хиты.

Запрос SELECT country, SUM(one) AS sum, ip FROM stat WHERE date LIKE '2005-04-27%' GROUP BY ip, country срабатывает, но возвращает список одинаковых стран с хостами.

Хотелось это сделать одним запросом. Потерял день...
Кто что посоветует?
Спасибо.
...
Рейтинг: 0 / 0
Помогите запрос составить...
    #33039010
RFT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cctvUkraine
$sql = "SELECT country, SUM (one) AS sum FROM (SELECT country, SUM(one) AS sum , ip FROM stat WHERE date LIKE '$date%' GROUP BY ip) GROUP BY country";


На что похоже?
...
Рейтинг: 0 / 0
Помогите запрос составить...
    #33039053
cctvUkraine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть строки из таблицы статистики посещения портала. (date, ip, country, one (единица - для удобства подсчетов) и др...).
Задача:
вывести значение: из страны (country) посещений (хостов) sum.

Если я пишу SELECT country, SUM(one) AS sum FROM stat WHERE date LIKE '$date%' GROUP BY country - он мне выдает количество хитов из данной страны, а нужны именно хосты. Тут нужен сложный запрос, поэтому я и обратился на форум...
...
Рейтинг: 0 / 0
Помогите запрос составить...
    #33039379
Фотография Johnmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
SELECT 
  country, 
  COUNT(DISTINCT ip)
FROM stat 
WHERE date LIKE '$date%' 
GROUP BY country
...
Рейтинг: 0 / 0
Помогите запрос составить...
    #33040069
cctvUkraine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Запрос:
SELECT country, SUM(one) AS sum, COUNT(DISTINCT ip) FROM stat WHERE date LIKE '$date%' GROUP BY country

Результат:
cn 1
Other 2
ru 29
tr 6
ua 65
Всего: хостов - 33, хитов - 103

Результат тот же, что и с запросом:
SELECT country, SUM(one) AS sum FROM stat WHERE date LIKE '$date%' AND (country != '') GROUP BY country ORDER BY country DESC.

Отображаються все равно хиты. Очень жаль... Но спасибо за то, что откликнулись...
...
Рейтинг: 0 / 0
Помогите запрос составить...
    #33040229
Фотография Johnmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не знаю, что такое "хит" и чего с ним делают...



авторЗапрос:
SELECT country, SUM(one) AS sum, COUNT(DISTINCT ip) FROM stat WHERE date LIKE '$date%' GROUP BY country

Результат:
cn 1
Other 2
ru 29
tr 6
ua 65

Враньё, не может быть такого рез-та по указанному запросу...
...
Рейтинг: 0 / 0
Помогите запрос составить...
    #33040723
cctvUkraine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хит - это количество просмотренных страниц, хост это количество уникальных посетителей...

По поводу результата запроса:
какой мне смысл чего-то там придумывать. Я пришел на форум помощи просить, а не баловаться...

Запрос:
SELECT country, SUM(one) AS sum, COUNT(DISTINCT ip) FROM stat WHERE date LIKE '$date%' AND (country != '') GROUP BY country
Результат:
cn 1
Other 2
ru 29
tr 6
ua 65

Код:
$all_host = mysql_num_rows(mysql_query("SELECT * FROM stat WHERE country != '' AND date LIKE '$date%' GROUP BY ip"));
$all_hits = mysql_num_rows(mysql_query("SELECT * FROM stat WHERE country != '' AND date LIKE '$date%'"));
echo ("<tr><td colspan='4' width='100%' style='background-color: #777777; color: #FFFFFF;'><b>Всего: хостов - $all_host, хитов - $all_hits</b></td></tr>");
Результат:
Всего: хостов - 70, хитов - 288

Тут прикол такой:
Если указать группировку country, он складывает строки с разными ИП. Таким образом я получаю количество хитов из данной страны...
Если указать группировку country, ip он выдает примерно такой результат:
cn 1
Other 1
Other 1
ru 1
ru 2
ru 1
ru 1
ru 2
ru 3
ru 1
ru 2
ru 2
ru
...
Если кто может помочь, помогите...
...
Рейтинг: 0 / 0
Помогите запрос составить...
    #33040768
Фотография Johnmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cctvUkraineЕсли кто может помочь, помогите...

О, господи... Сформулируешь ли ты наконец вопрос , без всяких там непонятных "хитов", "хостов" и "хинтов" ????????

cctvUkraineПо поводу результата запроса:
какой мне смысл чего-то там придумывать. Я пришел на форум помощи просить, а не баловаться...

Запрос:
SELECT country, SUM(one) AS sum, COUNT(DISTINCT ip) FROM stat WHERE date LIKE '$date%' AND (country != '') GROUP BY country
Результат:
cn 1
Other 2
ru 29
tr 6
ua 65

И всё-таки ты балуешься, ибо сей запрос имеет 3 (ТРИ) поля, а ты привёл только 2 (ДВА)... Ну да ладно...:)
...
Рейтинг: 0 / 0
Помогите запрос составить...
    #33040780
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cctvUkraineЗапрос:
SELECT country, SUM(one) AS sum, COUNT(DISTINCT ip) FROM stat
WHERE date LIKE '$date%' AND (country != '') GROUP BY country
Результат:
cn 1
Other 2
ru 29
tr 6
ua 65во-первых в результате должно быть три колонки, а не две, во-вторых COUNT(DISTINCT ip) считает именно хосты. Попробуй запрос SELECT country, COUNT(DISTINCT ip) as hosts FROM stat
WHERE date LIKE '$date%' AND (country != '') GROUP BY country
------------------
- А как в Интеpнете pаботать? - Сначала нужно узнать, что вам нужно ц
...
Рейтинг: 0 / 0
Помогите запрос составить...
    #33041215
cctvUkraine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо maXmo. Вроде сработало...
Первый раз в нете сталкиваюсь с людьми, которые не знают что такое хит и хост (не в обиду)...
...
Рейтинг: 0 / 0
Помогите запрос составить...
    #33041372
Фотография Johnmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не первый раз в нете сталкиваюсь с людьми, которые не могут чётко сформулировать вопрос, а получив правильный ответ, не могут/не хотят его понять (аналогично не в обиду)...
...
Рейтинг: 0 / 0
Помогите запрос составить...
    #33041548
cctvUkraine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хосты - количество уникальных посетителей страницы.
Хиты - Количество просмотренных страниц (или количество просмотров одной страницы).
Эти цифры обычно проставлены на счетчиках.

А ответ был не правильным. Правильно понял вопрос maXmo, и дал на него правильный ответ. В Вашем ответе не хватало всего лишь алиаса на количество ИП (COUNT(DISTINCT ip) as hosts ). Поэтому он у меня и не сработал. Напоминаю, что вывожу я это все средствами пхп.
...
Рейтинг: 0 / 0
Помогите запрос составить...
    #33041799
Фотография Johnmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cctvUkraine
А ответ был не правильным.
В Вашем ответе не хватало всего лишь алиаса на количество ИП (COUNT(DISTINCT ip) as hosts ). Поэтому он у меня и не сработал. Напоминаю, что вывожу я это все средствами пхп.

Это полный пипец !

PS Или ты просто прикалываешься ?
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите запрос составить...
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]