2010-11-08 5 views
0

У меня есть таблица SessionSELECT, продажи по парам пользователей

UserId SessionId 
    1   a 
    2   a 
    1   b 
    4   b 
    2   c 
    3   c 

И еще одну таблицу продаж, где продажи привязаны к SessionID. Я хотел бы получить продажи уникальными парами пользователей из таблицы Session без необходимости использовать курсор.

+0

Вы могли бы указать данные образца из таблицы продаж и ожидаемого результата? –

+0

Вы хотите увидеть его для каждой возможной комбинации пользователей? – JNK

+0

@JNK: Не все возможные комбинации, только те, которые уже существуют в таблице Session. – Fiur

ответ

1
SELECT ss1.userid, ss2.userid, SUM(sales) 
FROM session ss1 
JOIN session ss2 
ON  ss2.sessionid = ss1.sessionid 
     AND ss2.userid < ss1.userid 
JOIN sales s 
ON  s.sessionid = ss1.sessionid 
GROUP BY 
     ss1.userid, ss2.userid