Php 如何在codeigniter中合并2个查询

Php 如何在codeigniter中合并2个查询,php,mysql,sql,codeigniter,Php,Mysql,Sql,Codeigniter,我有两个查询。我想合并两个查询。当我试图添加两个查询时,没有得到结果。 请找到以下2个查询。甚至我也尝试在codeigniter模型中添加一个单核心PHP查询 但是没有得到结果。有谁能帮我解答这个问题吗 codeigniter-method1模型中基于PHP的核心查询 基于COdeigniter的查询方法2 我在我的模型中尝试了这两种方法,但没有得到结果,我尝试打印显示错误的查询。请在这方面帮助我。如果您使用CodeIgniter 3,您会发现get\u compiled\u select()非

我有两个查询。我想合并两个查询。当我试图添加两个查询时,没有得到结果。 请找到以下2个查询。甚至我也尝试在codeigniter模型中添加一个单核心PHP查询 但是没有得到结果。有谁能帮我解答这个问题吗

codeigniter-method1模型中基于PHP的核心查询 基于COdeigniter的查询方法2
我在我的模型中尝试了这两种方法,但没有得到结果,我尝试打印显示错误的查询。请在这方面帮助我。

如果您使用CodeIgniter 3,您会发现
get\u compiled\u select()
非常有趣,因为“像$this->db->get()一样编译选择查询,但不运行查询。此方法仅将SQL查询作为字符串返回。”。如果是这种情况,那么可以使用
$query1=$this->db->get_compiled_select();[..]$query2=$this->db->get_compiled_select()$query=$this->db->query($query1.“UNION”。$query2)。来源:是的,我尝试了,但得到了错误,而在第二个查询中,我将“”作为TST_类型,就像它在添加
get_compiled_select()
显示此错误后显示错误一样<代码>您的SQL语法有错误;查看与您的MySQL服务器版本对应的手册,以了解在第4行使用“ALLSELECT
Amadeus`AS
SupplierName
,”AS
TST_Type
,”AS
TKT_Type
,“
br_t”的正确语法。如果您使用的是CodeIgniter 3,您会发现
get\u compiled_select()
非常有趣,因为“像$this->db->get()一样编译选择查询,但不运行查询。此方法仅将SQL查询作为字符串返回。“。如果是这种情况,则可以使用
$query1=$This->db->get_compiled_select();[…]$query2=$This->db->get_compiled_select();$query=$This->db->query($query1.“UNION”$query2);
.Source:是的,我尝试了,但得到了错误,而在第二个查询中,我将“”作为TST\U类型,就像添加
get\u compiled\u select()后显示错误一样
显示此错误。
您的SQL语法有错误;请查看与您的MySQL服务器版本对应的手册,以了解在第4行的“ALLSELECT
Amadeus`AS
SupplierName
,“AS
TST类型
,”AS
TKT类型
br\t”附近使用的正确语法
$sql = "select
                'Amadeus' AS SupplierName,TST_Type,TKT_Type,TKTNumber,TKT_FO_REF,BasePrice,TaxPrice,Commission1,BasePrice+TaxPrice AS TotalPrice,'issued' AS tkt_type,booking_price.CreatedBy as createdby,`TicketedDate` AS created_date,CONCAT(`a3m`.`firstname`,`a3m`.`lastname`) AS created_name,a3m.account_id,`a3m`.locationvalue AS Location_ID,`a3m`.locationdescription AS Location_Name,`a3m`.costcentervalue AS CostCenter_ID,`a3m`.costcenterdescription AS CostCenter_Name
                 from 
                 data_flight.booking_price
                 left join `a3m_account_details` `a3m` ON `a3m`.`account_id` = data_flight.booking_price.CreatedBy  
                 where TKTNumber!=''

                 union all

                 select 
                 'Amadeus' AS SupplierName,'' AS TST_Type,'' AS  TKT_Type,br_tkt AS TKTNumber,'' AS TKT_FO_REF,br_fare_paid_B AS BasePrice, br_tax_refund_TXT AS  TaxPrice,
                 br_cancellation_penalty AS Commission1, br_fare_total_RFT AS TotalPrice,br_cancel_type AS tkt_type,booking_refund.br_added_by AS createdby,br_refund_date AS created_date      ,CONCAT(`a3m`.`firstname`,`a3m`.`lastname`) AS created_name,a3m.account_id,`a3m`.locationvalue AS Location_ID,`a3m`.locationdescription AS Location_Name,`a3m`.costcentervalue AS CostCenter_ID,`a3m`.costcenterdescription AS CostCenter_Name
                from  
                 data_flight.booking_refund  
                left join `a3m_account_details` `a3m` ON `a3m`.`account_id` = data_flight.booking_refund.br_added_by
                where br_tkt!=''
                ";

        echo $this->db->query($sql);
$this->db->select('"Amadeus" AS SupplierName,TST_Type,TKT_Type,TKTNumber,TKT_FO_REF,BasePrice,TaxPrice,Commission1,(BasePrice+TaxPrice) AS TotalPrice,"issued" AS tkt_type,createdby,TicketedDate as created_date,CONCAT(a3m.firstname," ",a3m.lastname) AS created_name,a3m.account_id,a3m.locationvalue AS Location_ID,a3m.locationdescription AS Location_Name,a3m.costcentervalue AS CostCenter_ID,a3m.costcenterdescription AS CostCenter_Name');
        $this->db->from($this->traveldb->database.".booking_price bp");
        $this->db->join('a3m_account_details a3m','a3m.account_id=createdby','left');
        $this->db->where('TKTNumber !=', '');
        $query1 = $this->db->get(); 

         $this->db->select('"Amadeus" AS SupplierName,"" AS TST_Type,"" AS  TKT_Type,br_tkt AS TKTNumber,"" as TKT_FO_REF,br_fare_paid_B as BasePrice,br_tax_refund_TXT as TaxPrice,br_cancellation_penalty as Commission1,br_fare_total_RFT AS TotalPrice,br_cancel_type AS tkt_type,br_added_by as createdby,br_refund_date as created_date,CONCAT(a3m.firstname," ",a3m.lastname) AS created_name,a3m.account_id,a3m.locationvalue AS Location_ID,a3m.locationdescription AS Location_Name,a3m.costcentervalue AS CostCenter_ID,a3m.costcenterdescription AS CostCenter_Name');
        $this->db->from($this->traveldb->database.".booking_refund bp");
        $this->db->join('a3m_account_details a3m','a3m.account_id=br_added_by','left');
        $this->db->where('br_tkt !=', '');
        $query2 = $this->db->get(); 

        $query = $this->db->query($query1." UNION ".$query2); 

     echo $this->db->last_query();