以下に示すように、2 つのテーブルを結合して結果を取得しようとしていますが、現在、希望どおりの出力が得られません。
望ましい出力
weight_pounds height_cm
121.25 130
132.28 160
154.32 221
176.37 434
私は2つのテーブルを持っており、各テーブルにはforeign_key列がありますcreater_id
user_weight テーブル
user_height テーブル
私はこの機能を試しましたが、間違った出力を示しています:
function get_all_user_bmi($uid)
{
$this->load->database();
$this->db->select('w.weight_pounds, h.height_cm');
$this->db->from('user_weight w');
$this->db->join('user_height h' ,'w.creater_id = h.creater_id');
$this->db->where('w.creater_id',$uid);
$this->db->where('h.creater_id',$uid);
$this->db->group_by(array('h.height_id'));
$this->db->order_by('w.uweight_id', 'ASC')->order_by('h.height_id', 'ASC');
//$this->db->group_by('h.height_id','w.uweight_id');
$this->db->distinct();
$res = $this->db->get();
$ret = array();
foreach ($res->result_array() as $row) {
$weight=$row['weight_pounds']* 4.88;
$height=($row['height_cm']*0.032808)*($row['height_cm']*0.032808);
$bmi=$weight/$height;
$ret[] = $bmi; //final bmi formuala calculated
}
print($this->db->last_query());
return $ret;
}
上記のphpコードを実行して、異なる出力(正しくない)を取得する