2013-11-19 3 views
0

Привет друзья У меня есть две таблицыКак получить одну запись в таблице с помощью CodeIgniter

1)user 

id name etc.. 
1 xyz 
2 pqrs 
3 lmn 

2)cart 
cart_id id etc.... 
1  1 
2  2 
3  1 
4  1 

я хочу, чтобы получить корзины данные, имеющие информацию о пользователе с дубликатов (только мы получаем, кто имеет по меньшей мере одну тележку пользователь пункт)

Примечание:

$this->db->select('*'); 

$this->db->from('user'); 
$this->db->distinct(); 
$this->db->join('cart', 'cart.id = users.id'); 
$query = $this->db->get()->result(); 

здесь я получаю все повторяющиеся данные пользователя я хочу только один раз пользовательские данные, которые испытывают в к корзине

пожалуйста, помогите мне

ответ

2

Попробуйте group by как

$this->db->group_by('cart.id'); 

Так было бы

$this->db->select('*'); 
$this->db->from('user'); 
$this->db->distinct(); 
$this->db->join('cart', 'cart.id = users.id'); 
$this->db->group_by('cart.id'); 
$query = $this->db->get()->result(); 
+3

Большое спасибо брат .once снова Спасибо youuuuuuuuuuuuuuuuuuuuuuuuuuuuu –

0

см раствора ниже

function users_having_sinle_item(){ 
    $this->db->select('u.id, count(c.id) cart_count, u.username, c.cart_id, c.created_at');  
    $this->db->from('users u');  
    $this->db->join('cart c', 'c.id = u.id');  
    $this->db->group_by('u.id'); 
    $this->db->having('cart_count = 1'); 
    $query = $this->db->get()->result(); 
    print_r($query); 
} 
+0

Ваш welcom друг! –

Смежные вопросы