sql >> Databasteknik >  >> RDS >> Mysql

Hur man infogar data i tabell1 med kontrollfält från tabell2 (Codeigniter)

Du kan skriva en insert select-sats.

Detta är bara en grov visualisering eftersom du inte har angett din kod. Låt mig veta om du behöver förtydliganden.

INSERT INTO table1 (id_data_inserted, date, id_data, id_room) 
    SELECT
        '$id_data_inserted' as id_data_inserted,
        '$date' as date,
        '$id_data' as id_data,
        '$id_room' as id_room
    FROM table2 WHERE id_data = $id_data

Svar på din uppdatering:

Här är mitt uppdaterade svar för din kontroller. Men jag föredrar fortfarande mitt första svar eftersom det är mycket snabbare.

$checkID_Data = $this->my_model->checkIdData()->result_array();
$passed = FALSE;

foreach ($checkID_Data as $v)
{
    if($id_data == $v['id_data '])
    {
        $data = array
        (
           'id_data_inserted' => $v['id_data'],
           'date' => $date,
           'id_data' => $id_data,
           'id_room' => $id_room
        );

        $this->my_model->input_data($data, 'table1');
        $data['table1'] = $this->my_model->viewl_data('table1')->result();
        $this->load->view('admin/data/v_data', $data);
        $passed = TRUE;
        break;
    }
}

if (!$passed)
{
   echo "Failed to input!";
}



  1. MySQL - Hur visar man alla dagars poster i en viss månad?

  2. ta reda på om ett årsdag är på väg om n dagar i MySql

  3. Anropsbeteckning för PL/SQL-subrutiner i Oracle Database

  4. Mysql förbättrar SELECT-hastigheten