select web_server,pv,user from table1 union all select err,err1 from table2 用union的时候要求两个表结构完全相同,不同就出错。select t1.web_server,t1.pv,t1.user,t2.err,t2.err1 from table1 t1,table2 t2
select a.web_server,b.pv,b.user,a.err,a.err1 from table2 as a left outer join table1 as b on a.web_server=b.web_server
select table1.web_server,table1.sum(pv),table1.sum(user),table2.sum(err),table2.sum(err1) from table1,table2 group by table1.web_server为什么会报错啊??
for SQLServer: =============================== select table2.web_server,isnull(table1.pv,0) as pv,isnull(table1.user,0) as user,table2.err,table2.err1 from table2 left join table1 on table2.web_server = table1.web_server
van_glm(),我那几个字段都是要sum的
我觉的还是照楼上几位的方法好,用left join查询,这样只查询一次就可以了。
我的数据量太大了,连接查询,MYSQL就死掉了
select table1.web_server,sum(table1.pv),sum(table1.user),sum(table2.err),sum(table2.err1) from table,table1 group by page.web_server执行后就死在那了
select table1.web_server,sum(table1.pv),sum(table1.user),sum(table2.err),sum(table2.err1) from table,table1 group by table1.web_server
---更正select table1.web_server,sum(table1.pv),sum(table1.user),sum(table2.err),sum(table2.err1) from table1,table2 group by table1.web_server
用union的时候要求两个表结构完全相同,不同就出错。select t1.web_server,t1.pv,t1.user,t2.err,t2.err1 from table1 t1,table2 t2
$reslult = mysql_query($sql);
while($row = mysql_fetch_mysql_fetch_assoc($reslult ))
{
$array =$row[];
$sql_2 = "select * from able2 WHERE web_server = $row['web_server']";
$reslult_2 = mysql_query($sql_2);
while($row_2 = mysql_fetch_mysql_fetch_assoc($reslult_2))
{
$array['err'] = $row_2['err'];
$array['err_1'] = $row_2['err_1'];
}
}
===============================
select table2.web_server,isnull(table1.pv,0) as pv,isnull(table1.user,0) as user,table2.err,table2.err1
from table2
left join table1 on table2.web_server = table1.web_server