2010-08-12 295 views
2

如何将两个条件组合?我在一天中的每个小时都记录每个ID,并且我想通过第一个ID以及当天该ID的所有记录,第二个ID以及当天的所有记录对信息进行分组。按多个条件分组 - MySQL

我的查询示例是这样的:

SELECT 
    r.name 
    , r.network 
    , r.namestring 
    , i.name 
, i.description 
    , r.rid 
    , i.id 
    , d.dtime 
    , d.ifInOctets 
FROM router AS r 
INNER JOIN interface AS i 
ON r.rid = i.rid 
INNER JOIN 1279080000_1_60 AS d 
ON i.id = d.id 
AND dtime BETWEEN 1279113600 AND 1279115400 
WHERE r.network = "ITPN" 
AND i.status = "active" 
GROUP BY i.id AND d.dtime    // each id with all its dtime 

这最终总是给我该ID的总价值。 任何想法我可以使用?我不想总结所有的价值。

谢谢

回答

6

要通过多个表达式组,你应该用逗号分开,不和:

GROUP BY i.id, d.dtime 

你也应该确保两个记录形成的同一天有相同的值DTIME。从你的问题来看,并不清楚这是否是这种情况。

+0

嗨,我试过你说的,但它不起作用。我想问题是,dtime是不同的。 我的记录是这样的用于例如: ID DTIME ifInOctet 1 9:20 100 2 9:20 90 3 9:20 78 1 9:21 23 2 9:21 50 1 9:22 3 3 9:22 200 我想将所有1组合在一起,但不想合计IfInOctet的值。 有什么想法? – JJunior 2010-08-13 01:30:38