专题文献的sql效率提升
This commit is contained in:
parent
feb6fc5fc6
commit
4c03869064
|
@ -221,14 +221,14 @@ class Reference
|
||||||
public function fetchThemeReferences($code)
|
public function fetchThemeReferences($code)
|
||||||
{
|
{
|
||||||
$wheresql = array();
|
$wheresql = array();
|
||||||
$wheresql[] = " s.code='$code' ";
|
//$wheresql[] = " s.code='$code' ";
|
||||||
if(!empty($this->keyword))
|
if(!empty($this->keyword))
|
||||||
{
|
{
|
||||||
$wheresql[] = " (ref.title LIKE '%{$this->keyword}%' OR ref.reference LIKE '%{$this->keyword}%') ";
|
$wheresql[] = " (ref.title iLIKE '%{$this->keyword}%' OR ref.reference iLIKE '%{$this->keyword}%') ";
|
||||||
}
|
}
|
||||||
if(count($wheresql)>0)
|
if(count($wheresql)>0)
|
||||||
{
|
{
|
||||||
$wheresql = " WHERE ".join(" AND ",$wheresql);
|
$wheresql = " and ".join(" AND ",$wheresql);
|
||||||
}else{
|
}else{
|
||||||
$wheresql = "";
|
$wheresql = "";
|
||||||
}
|
}
|
||||||
|
@ -240,9 +240,10 @@ class Reference
|
||||||
$order = "ref.{$this->order} {$this->sort}";
|
$order = "ref.{$this->order} {$this->sort}";
|
||||||
}
|
}
|
||||||
|
|
||||||
$sql="select distinct ref.* from mdref r left join {$this->table->reference} ref on r.refid=ref.id
|
$sql="select distinct ref.* from {$this->table->reference} ref where ref.id in (select r.refid from mdref r
|
||||||
left join datasource ds on r.uuid=ds.uuid left join {$this->table->source} s on s.id=ds.sourceid
|
left join datasource ds on r.uuid=ds.uuid left join {$this->table->source} s on s.id=ds.sourceid
|
||||||
$wheresql
|
where s.code='$code')
|
||||||
|
$wheresql
|
||||||
ORDER BY $order";
|
ORDER BY $order";
|
||||||
$rs=$this->db->query($sql);
|
$rs=$this->db->query($sql);
|
||||||
return $rs->fetchAll();
|
return $rs->fetchAll();
|
||||||
|
|
Loading…
Reference in New Issue