各位JJ大的小伙子们~问个帝国cms分表的问题
我原来的表是phome_article,文章太多了,SQL查询贼慢~才发现有个分表的功能原来的sql是 select * from phome_article我现在如果分表的话,假设分成phome_article_1和phome_article_2,这个时候我原来模板中的调用sql是要修改吗?
比如要调用最新的 是要改成 select * from phome_article_2还是帝国内部有机制,直接使用select * from phome_article就可以调用? 以下的AI回复仅供参考,希望对你有用:
一个栏目绑定一个模型 这就是帝国的主表分表了
栏目设置绑定模型
当然每个栏目查询就对应相应的模型表就可以了。如果要查询所有主表的数据,下面供参考 老哥~我加了你Q,你看下 AI我也问过,不晓得靠谱不 ai都不行 <?php
$fenbiaoarticle = '5';//分了多少个文章主表数量,根据你实际的主表分表数量
$unionQuery = '';
for ($i = 0; $i < $fenbiaoarticle-1; $i++) {
if ($i == 0) {
$unionQuery = "select * from {$dbtbpre}ecms_article" . $fenbiaoarticle[$i] . " ";
} else {
$unionQuery .= " union all select * from {$dbtbpre}ecms_article" . $fenbiaoarticle[$i] . " ";
}
}
$unionQuery .= ' order by id desc limit 10';
$sql=$empire->query($unionQuery);
while($r=$empire->fetch($sql)){
?>
<tr>
<td width="67%" height="25">·<a href="<?=$r['titleurl']?>" target="_blank">
<?=esub(stripslashes($r['title']),32)?>
</a></td>
<td width="33%"><div align="center">[<?=date('Y-m-d',$r['newstime'])?>]</div></td>
</tr>
<?php
}
能不能看懂呢?这就是多个多个主表的 最好不要读取所有的主表,这会造成mysql临时表写入非常高高
页:
[1]