欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

smarty?SQL

程序员文章站 2022-06-17 13:42:58
...
public functions getName(){   $sql=sprintf("select pin,point from table");   $results = array();   if(!$error=$this->db->query($sql)) {      $name = $this->getSn($results['pin']);      $this->hlist[] = $results;   }   $this->db->free();   $this->db2->free();   return $this->hlist;}public function getSn($pin){   $sql = sprintf("SELECT sn FROM `%s_pin` WHERE pin=%s",__MYSQL_PREFIX,$pin);   return $this->db2->get_one($sql);}

在sql执行过程中执行另一条sql.原本getSn里的db2是写成db,但发现查出来的数据只有1条,所以才加个db2
现在sql是没问题了,但打开页面的时间好久,请问要怎么优化??


回复讨论(解决方案)

$this->db2-> get_one($sql)
从方法的命名上看,就是取一条记录

$this->db2-> get_one($sql)
从方法的命名上看,就是取一条记录



Table
series(数据表): id(字段) name
category: id seriesid name
$sql=sprintf("select id,seriesid,name from category"); if(!$error=$this->db->query($sql)) {      $name = $this->getName($results['seriesid']);      $results['seriesid']=$name['name'];      $this->hlist[] = $results;   } return $this->hlist;//我想把从category表里读取出来的seriesid替换成对应的名字//但是用这种方法,在页面打开的时候要等很久,请问可以怎么优化??function getName($seriesid){   $sql=sprintf("select name from series where id=$seriesid");   return $this->db2->get_one($sql);}

你确定页面慢是这段代码的问题吗?

自己先检查一下看是哪里慢。

相关标签: smarty?SQL