2016-03-22 3 views
0

Мне нужно получить общее количество уникальных строк в ежедневных ip-базах, повторение ip в другой день должно учитываться для строки.MySQL GROUP BY возвращает одну строку

я следовал этим link, link подход, но не работал

Я делаю так

Database

| ip  | date | 
| 1698170033 | 19032016 | 
| 1698170034 | 19032016 | 
| 1698170033 | 19032016 | 
| 1698170033 | 20032016 | 
| 1698170034 | 20032016 | 
| 1698170035 | 20032016 | 
| 1698170036 | 20032016 | 
| 1698170033 | 20032016 | 

MySQl

SELECT 
`date`, `ip` 
FROM `stats`.`stats`  
GROUP BY `date` 

Это дает результат как

| 1698170033 | 19032016 | 
| 1698170033 | 20032016 | 

Ожидаемый результат

| 1698170033 | 19032016 | 
| 1698170033 | 20032016 | 
| 1698170034 | 20032016 | 
| 1698170035 | 20032016 | 
| 1698170036 | 20032016 | 

Пожалуйста, предложите любой возможный способ сделать это.

Благодаря

+1

группы обоими 'ф и date' – 1000111

+0

@ 1000111 спасибо, что работал. –

+0

Добро пожаловать :) @TallboY ​​ – 1000111

ответ

3

Вы должны GROUP BYip поле тоже:

SELECT `date`, `ip` 
FROM `stats`.`stats`  
GROUP BY `date`, `ip` 

Это даст вам четкий список всех date, ip пар таблице.

+0

Это сработало, спасибо –

+0

У меня есть еще одна проблема сейчас, см. Обновление, о котором идет речь, есть столбец 'значение', и мне нужно добавить это значение тоже, мне нравится SUM (' value'), но он добавляет всю видимость 'value' для данного ip' 1698170033' как '2900' для даты' 20032016 ' –

+0

@TallboY ​​Можете ли вы попробовать опубликовать другой вопрос, так как это другая проблема? –

0

Попробуйте использовать группу по дате и ф

SELECT `date`, `ip` FROM `stats`.`stats`GROUP BY `date`, `ip` 
+0

@Tall boY вы можете проверить мой запрос? –

Смежные вопросы