如何将 SQL INSERT INTO SELECT 与 codeigniter 一起使用

Posted

技术标签:

【中文标题】如何将 SQL INSERT INTO SELECT 与 codeigniter 一起使用【英文标题】:how to using SQL INSERT INTO SELECT with codeigniter 【发布时间】:2019-06-19 15:06:49 【问题描述】:

如何在 CodeIgniter 中使用 SQL 插入到 select 中。

型号...

public function history($book_id)



$query = $this->db->query('INSERT orders (book_id, title)
                       SELECT book_id, book_title
                       FROM books
                       WHERE book_id = \'$book_id\'');

  return true;



【问题讨论】:

【参考方案1】:

首先从books 表中获取所有书籍,然后根据您的$book_id 插入顺序

示例:

public function history($book_id)

    $this->db->select('book_id, book_title');
    $this->db->from('books');
    $this->db->where('book_id', $book_id);
    $query = $this->db->get();

    if ( $query->num_rows() > 0 ) // if result found
    
        $row = $query->result_array(); // get result in an array format
        $data = array();
        foreach($row as $values)
            $data = array(
                'book_id' => $values['book_id'],
                'title' => $values['book_title']
            );
            $this->db->insert('orders', $data); // insert in order table
        
        return true;    
    
    else
        return false; 
     

【讨论】:

@tianjinchen:很高兴帮助你不要忘记接受答案,这将有助于未来的访客

以上是关于如何将 SQL INSERT INTO SELECT 与 codeigniter 一起使用的主要内容,如果未能解决你的问题,请参考以下文章

sql语句 两个表字段不一致 如何将表2内容insert into表1中

oracle SELECT INTO 和 INSERT INTO SELECT 两种表复制语句详解

access SQL中如何实现“INSERT INTO”

sql [INSERT INTO VALUES]将内容(一行)添加到现有的表#SQL中

INSERT INTO 语句的语法错误

SQL INSERT INTO 语法 [重复]