如何在PHP Codeigniter中从一个表中获取特定列,并从另一表中获取所有其他数据

时间:2018-10-30 10:03:24

标签: php codeigniter

我的问题是我想从购买账单表中打印账单编号,账单日期,货品名称,数量,金额,折扣百分比,光盘金额以及我想根据账单号显示商品名称。 ..i我尝试将其与两个表连接在一起,但是它会重复显示数据。 控制器代码:

    if($name = $this->input->post('businessType'))
        {$this->db->where('date >=', $newDate);
        $this->db->where('date <=', $newDate2);
        $this->db->select('*');
        $this->db->from('purchasebill');
        $this->db->order_by("date", "asc");
        $this->db->join('purchasebill', 'purchasebill.date = purchaseitem.billdate','left outer');
        $this->db->join('parmaster','parmaster.Pcode = purchasebill.partyname','left outer');
  $query = $this->db->get()->result_array();
        $data['query'] = $query;

查看代码:

<th>Bill No</th>
                                    <th>Bill Date</th>
                                    <th>Party Name</th>
                                    <th>Item Name</th>
                                    <th>Qty</th>
                                    <th>Amount</th>
                                    <th>Disc %</th>
                                    <th>Disc Amt</th>
                                    <th>Bill Amount</th>
                                    <!--<th>Bill Amount</th>-->
                                </tr>

                            </thead>
                            <br>
                                                        <tbody>


                            <?php $rowcount = 1 ?>                          
                            <?php foreach($query as $row): ?>

                                    <tr>
                                        <td><?=$rowcount;?></td>
                                        <td><?=$row['no'];?></td>
                                        <td><?=$row['date'];?></td>
                                        <td><?=$row['PName'];?></td>
                                        <td><?=$row['Prdtname'];?></td>
                                        <td><?=$row['sqty'];?></td>
                                        <td><?=$row['billtot'];?></td>
                                        <td><?=$row['Disper'];?></td>
                                        <td><?=$row['Disamt'];?></td>
                                        <td><?=$row['Grdtot'];?></td>
                                        <?php $rowcount +=1?>
                                        <br>
                                        <?php endforeach ?> 

帮我解决这个问题...提前感谢

1 个答案:

答案 0 :(得分:0)

您要在第No行上连接同一表。 7,这就是其重复的原因。可能是,您想加入“ purchaseitem”表。如果是这样,则将该行更改为此-

   $this->db->join('purchaseitem', 'purchasebill.date = purchaseitem.billdate','left outer');