我有两张格式相同的表格: user_id,param1,param2 ,...
我必须组合两个表中的行,但每个user_id只出现一次。 (如果两个表中都有一些user_id,则此user_id只使用第二个表行)
到目前为止,我试图使用:
public function login_check(){
$data['base_url'] = base_url();
$this->form_validation->set_rules('email', 'Email', 'trim|required|xss_clean');
$this->form_validation->set_rules('password', 'Password', 'trim|required|xss_clean|callback_check_database');
if ($this->form_validation->run($this) == false) {
$this->index();
} else {
if(isset($this->session->userdata['logged'])) {
$data['login_bg'] = $this->input->post('login_bg');
$this->load->view("admin_db", $data);
}
}
function check_database($password){
$email= $this->input->post('email');
$user = $this->user->loginCheck($email, $password);
if($user[1] == 1){
$result = $this->user->user_details($email);
if($result != false) {
$session_data = array(
'id' => $result[0]->id,
'email' => $result[0]->cp_email,
);
$this->session->set_userdata('logged', $session_data);
return true;
}
} else{
$this->form_validation->set_message('check_database', $user[0]);
return false;
}
}
但它只输出user_id字段。是否有" first_occurance(属性)"我可以使用的分组功能:
SELECT tt.user_id, * FROM
(SELECT * from t2
UNION_ALL
SELECT * from t1) as tt
group by tt.eid
或者有更好的方法吗?
PS。表有1-3百万条记录。