Получение подписчиков и подписок одним запросом с использованием MySQL

Хорошо, допустим, я создаю социальные сети, такие как твиттер. У меня есть таблица под названием social, куда она попадает или куда мы помещаем наши социальные вещи.

example me ( uid = 1 )
friend1 ( uid = 2 )
friend2 ( uid = 3 )

Таблица

SID AUID BUID
1   1    2
2   1    3
3   2    1

Информация, которую мы получаем здесь, это

user id 1(me) is following 2
user id 1(me) is following 3
user id 2 is following 1(me)

И вопрос: Можем ли мы сделать что-то подобное двум запросы ниже в одном запросе?

function CountFollowers($uid){
    $count = $this->fetch("SELECT COUNT(BUID) as followers
                                   FROM social WHERE BUID = :uid", 
    array( 'uid' => $uid));
    return $count;
}

и

function CountFollowing($uid){
    $count = $this->fetch("SELECT COUNT(AUID) as following
                                   FROM social WHERE AUID = :uid", 
    array( 'uid' => $uid));
    return $arrayofdata;
}

Спасибо, что заглянули в

5
задан RichardTheKiwi 24 February 2011 в 19:16
поделиться