我为电子书开发了一个网站,我在数据库表中有作者和出版商表..有时作者姓名也作为出版商添加到出版商表中现在我有他的名字作为作者和出版商..当我在网站上搜索他的名字,它返回两次,因为我在作者表和出版商表中搜索,然后合并两个查询
这是我的代码:-
function generate_results($keyword, $row = 0) {
$result1 = $this->db->query("SELECT au_id,au_name,au_state,SUBSTR(au_info,1,190) AS au_info,au_img FROM d_author where (au_name LIKE '%$keyword%' or au_info LIKE '%$keyword%') and au_state = '1' limit $row,20");
$result2 = $this->db->query("SELECT pub_id,pub_name,pub_state,SUBSTR(pub_info,1,190) AS pub_info,pub_img FROM d_publishing where (pub_name LIKE '%$keyword%' or pub_info LIKE '%$keyword%') and and pub_state = '1' limit $row,20");
$results = array_merge($result1->result_array(), $result2->result_array());
return $results;
}
现在我想将第二个查询修改为类似的内容:从“发布者表”中选择所有发布者,其中发布者的名称类似于 $keyword 并且此 $keyword 在作者表中不存在..我的意思是如果此名称存在于作者不在出版商中选择它我如何将这个含义翻译成 Mysql 查询