Добавление двух значений в операторе выбора, когда одно из значений происходит от функции - codeigniter / php / mysql - PullRequest
1 голос
/ 11 октября 2011

У меня есть функция, которая возвращает один результат «3», и у меня есть другая основная функция, которая делает запрос к базе данных, и в операторе выбора мне нужно, чтобы значение было добавлено в оператор выбора.

Этот запрос возвращает одно значение из первой функции:

function insert() {
$siteid = 1;
$field = 3;
$time = "2011-10-11 15:04:56";
$this->db->select('Offset_value', 1)
     ->from('offset')
     ->where('siteid', $siteid)
     ->where('Offset_field', $field)
     ->where('time <', $time);
$query = $this->db->get()->result_array();

foreach ($query as $row) {
    echo $row['Offset_value'];
    }
return $query;

}

Затем мне нужно это вычислить в этом операторе выбора:

$this->db->select("kwh * $dr * $kwp + $this->insert() AS kwhdata")
         ->from('expected_kwh')
         ->where('direction', $direction)
         ->where('tilt', $tilt)
         ->where('month', $month);
    $query2 = $this->db->get()->result_array();

    return $query2;

Я пытаюсьпереписать хранимую процедуру, которая была создана в mssql, и вот как она там работает, поэтому я пытаюсь использовать тот же подход здесь.

Спасибо

1 Ответ

0 голосов
/ 11 октября 2011

Я думаю, что php просто не нравится синтаксис метода $ obj-> внутри кавычек.Попробуйте это для этой строки выбора:

$this->db->select("kwh * $dr * $kwp + ".$this->insert()." AS kwhdata")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...