查询来自多个表的数据

时间:2011-06-15 17:27:59

标签: php search multiple-tables

我有一个搜索功能,目前从一个表中获取数据,我也想从另一个表中获取数据。

$query = $this->db->get('tbl_customer');
$this->db->select('in_customer_id, st_company_name, in_customer_type, st_customer_account, st_customer_state_id, flg_customer_account_type, in_status, dt_added_date, st_tag');
if(trim($action['searchtxt'])!='')
    $this->db->like('st_company_name', html_entity_decode($action['searchtxt']));

观点:

   <div class="floatl"  style="width:250px;">
      <form name="frm" action="<?php echo $index_url; ?>customers/search/" method="post">
        <div class="floatl">                
          <input name="Search" type="text" class="textboxsearch" id="Search" onfocus="if(this.value==this.defaultValue)this.value='';" onblur="if(this.value=='')this.value=this.defaultValue;" value="<?php if($searchtxt!=''){ echo $searchtxt; } else{ echo 'Search'; }?>" maxlength="50" />
        </div>
            <div class="floatl searchicon">
          <input type="image"  src="<?=$admin_base_url?>images/textbox_search.gif" alt="" width="22" height="22" />
          </div>
        <br />
        <br />
        <font class="txt9">(i.e. Company, Account name)</font>
      </form>          
    </div>

我想要另外搜索的表名为tbl_admin_user。关于如何实现这一目标的任何想法?

2 个答案:

答案 0 :(得分:0)

你可能想稍微研究一下你的SQL,特别是看看SQL Joins

话虽如此,在重新阅读您的问题之后,您似乎正在尝试在特定列中搜索多个表中相当具体的数据。首先,您可能希望使用LIKE代替WHERE

其次,根据您显示结果的方式,您可能要么编写两个单独的查询,然后遍历每个单独的结果并显示它们。如果表结构确实不同,可能会有联盟或加入,但也可能难以准确显示结果。

答案 1 :(得分:0)

您似乎正在使用ORM /框架来访问数据,您正在使用它。

无论如何,您可能正在寻找joinunion