select b.name,b.key_,a.value_avg,(SELECT from_unixtime(a.clock,'%Y-%m-%d %H:%i:%s')) AS 
date,c.host,avg(c.name) AS hostname,d.ip 
from trends a,items b,hosts c,interface d 
where a.itemid = b.itemid
AND b.hostid = c.hostid 
AND c.hostid = d.hostid
AND d.type = 1 
AND b.name = "CPU $2 time" 
AND b.key_ = "system.cpu.util[,user]" 
and b.hostid IN(SELECT hostid FROM hosts_groups WHERE groupid = 36)
ORDER BY date DESC    想加个条件求2周数据

解决方案 »

  1.   

    再加个条件:
    日期字段 between 起始日期 and 结束日期
      

  2.   

    直接用week或day条件e.g.and from_unixtime(a.clock,'%Y-%m-%d')>=DATE_FORMAT(adddate(now() ,INTERVAL -2 week),'%Y-%m-%d')#ORand from_unixtime(a.clock,'%Y-%m-%d')>=DATE_FORMAT(adddate(now() ,INTERVAL -14 day),'%Y-%m-%d');
      

  3.   

    select b.name,b.key_,a.value_avg,(SELECT from_unixtime(a.clock,'%Y-%m-%d %H:%i:%s')) AS 
    date,c.host,avg(c.name) AS hostname,d.ip 
    from trends a,items b,hosts c,interface d 
    where a.itemid = b.itemid
    AND b.hostid = c.hostid 
    AND c.hostid = d.hostid
    AND d.type = 1 
    AND b.name = "CPU $2 time" 
    AND b.key_ = "system.cpu.util[,user]" 
    and b.hostid IN(SELECT hostid FROM hosts_groups WHERE groupid = 36)
    and date between xxx and xxxx
    ORDER BY date DESC