MYSQL有N个表 例如cdr_20090901,cdr_20090902,cdr_20090903,cdr_20090904,一直到20101010如何循环查询这些表名哈
$sql=mysql_query("SELECT * FROM `$a` callerid like '%$keyword%' union
SELECT * FROM `cdr_20090902` WHERE callerid like '%$keyword%' union
SELECT * FROM `cdr_20090903` WHERE callerid like '%$keyword%'");
要是这样用union的话太麻烦了有365个表不能一直UNION吧,循环可以么,我用FOR的话,他总是显示最后一个表20090902的如下:
$name="cdr_";
for($i=20090901;$i<20090903;$i++){
$time=$i;
$a=$name.$time;
$sql=mysql_query("SELECT * FROM `$a` WHERE start >='$keyword2 00:00:00' and start <='$keyword3 23:59:59' and callerid like '%$keyword%'");
$row=mysql_fetch_object($sql);
}
。如果将}放到最后一段 mysql_free_result($sql);
mysql_close($link);
后面则显示一大堆错误Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in D:\htdocs\xing\check_search1_affiche.php on line 32Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in D:\htdocs\xing\check_search1_affiche.php on line 32Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in D:\htdocs\xing\check_search1_affiche.php on line 33Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in D:\htdocs\xing\check_search1_affiche.php on line 39Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in D:\htdocs\xing\check_search1_affiche.php on line 39Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in D:\htdocs\xing\check_search1_affiche.php on line 40哪位大虾能帮忙哈 如何编写从cdr_20090901到20101010的循环的数据表的搜索。
$sql=mysql_query("SELECT * FROM `$a` callerid like '%$keyword%' union
SELECT * FROM `cdr_20090902` WHERE callerid like '%$keyword%' union
SELECT * FROM `cdr_20090903` WHERE callerid like '%$keyword%'");
要是这样用union的话太麻烦了有365个表不能一直UNION吧,循环可以么,我用FOR的话,他总是显示最后一个表20090902的如下:
$name="cdr_";
for($i=20090901;$i<20090903;$i++){
$time=$i;
$a=$name.$time;
$sql=mysql_query("SELECT * FROM `$a` WHERE start >='$keyword2 00:00:00' and start <='$keyword3 23:59:59' and callerid like '%$keyword%'");
$row=mysql_fetch_object($sql);
}
。如果将}放到最后一段 mysql_free_result($sql);
mysql_close($link);
后面则显示一大堆错误Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in D:\htdocs\xing\check_search1_affiche.php on line 32Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in D:\htdocs\xing\check_search1_affiche.php on line 32Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in D:\htdocs\xing\check_search1_affiche.php on line 33Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in D:\htdocs\xing\check_search1_affiche.php on line 39Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in D:\htdocs\xing\check_search1_affiche.php on line 39Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in D:\htdocs\xing\check_search1_affiche.php on line 40哪位大虾能帮忙哈 如何编写从cdr_20090901到20101010的循环的数据表的搜索。
$timeArr = array(.....);
foreach ($timeArr as $key => $value) {
$sql = "select * from $value where ...";
$result = mysql_query($sql);
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
$record[] = $row;
}
}
这样就把这些表里面的所有记录都找到了!
$name="cdr_";
$year="2008";
$month="1";
$date="1";
for($y=2008;$y<2010;$y++){
$year=$y;
$timeMrr = array(01,02,03,04,05,06,07,08,09,10,11,12);
foreach ($timeMrr as $key => $month) {
$timeDrr = array(01,02,03,04,05,06,07,08,09,10,11,12...31);
foreach ($timeDrr as $key => $date) {
$a=$name.$year.$month.$date;
$timeArr = array(.....);
foreach ($timeArr as $key => $value) {
$sql = "select * from $value where ...";
$result = mysql_query($sql);
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
$record[] = $row;
}
}
}
}
}
运行完后没数据显示,拜托您再帮我看看 谢谢了啊!!
while ($row = mysql_fetch_row($result)) {
if (str_replace('cdr_','',$row[0]) >20090901 && str_replace('cdr_','',$row[0]) < 20091001){
//表的名字就是$row[0]
//执行单表查询 }}
$sql = 'select * from xxx where y ='.$a.' and z='.$b;
$result = mysql_query($sql);