2013-05-19 45 views
1

你好我想通過visit_id分組一些結果,但它似乎不工作。MYSQL GROUP BY不分組

這是我的代碼。

SELECT url1 FROM pages GROUP BY visit_id ORDER BY timedate 

這裏是我的數據庫結構

id` int(10) NOT NULL AUTO_INCREMENT, 
`client_id` int(11) NOT NULL, 
`url` text NOT NULL, 
`time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, 
`timedate` datetime NOT NULL, 
`visit_id` varchar(100) NOT NULL, 
`url1` varchar(255) NOT NULL, 
`page_time` time NOT NULL 

代碼工作,它只是似乎並不組由ID

+0

你能提供數據和結果嗎? – sectus

+0

分享一些樣本數據和結果 – draxxxeus

+0

我想你想排序結果,並有相同的'visit_id'分組在一起的行。如果是,請嘗試'SELECT visit_id,url1 FROM pages ORDER BY visit_id,timedate' –

回答

0

這是一個猜測。猜測是你希望所有url1對於給定的visit_id「分組」在一起。如果是這樣,使用group_concat()

SELECT visit_id, group_concat(url1 separator ', ' order by timedate) 
FROM pages 
GROUP BY visit_id 

我也select子句中包括visit_id所以你可以看到哪些訪問對應的頁面。如果你想要一個唯一的列表,然後使用group_concat(distinct url1 . . .)