COUNT щелкает / открывает для оценки участия - PullRequest
0 голосов
/ 02 апреля 2020

Я немного заржавел на SQL, поэтому любая помощь приветствуется. Я также ссылаюсь на свой SQL учебник, но я подумал, что попробую это.

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

SELECT a.[opportunityid], 
       a.[first name], 
       a.[last name], 
       a.[anticipatedentryterm], 
       a.[funnelstage], 
       a.[programofinterest], 
       a.[opportunitystage], 
       a.[opportunitystatus], 
       a.[createdon], 
       a.[ownerfirstname], 
       a.[ownerlastname], 
       a.[f or j visa student], 
       a.[donotbulkemail], 
       a.[statecode], 
       Count(DISTINCT c.[subscriberkey]) AS 'Clicks', 
       Count(DISTINCT b.[subscriberkey]) AS 'Opens', 
       Count(DISTINCT b.[subscriberkey]) * 1.5 + 
       Count(DISTINCT c.[subscriberkey]) * 3 AS 'Probability' 
FROM   [ug_all_time_joined] a 
       INNER JOIN [open] b 
               ON a.[opportunityid] = b.[subscriberkey] 
       INNER JOIN [click] c 
               ON a.[opportunityid] = c.[subscriberkey] 
GROUP  BY a.[opportunityid], 
          a.[first name], 
          a.[last name], 
          a.[anticipatedentryterm], 
          a.[funnelstage], 
          a.[programofinterest], 
          a.[opportunitystage], 
          a.[opportunitystatus], 
          a.[createdon], 
          a.[ownerfirstname], 
          a.[ownerlastname], 
          a.[f or j visa student], 
          a.[donotbulkemail], 
          a.[statecode] 

Что-то не так с моими функциями COUNT, запрос заполняет одно и то же значение в Clicks и Opens, и я не думаю, что это точно. Результат, к которому я стремлюсь, состоит в том, сколько раз появляется идентификатор подписчика (который будет соответствовать отдельным щелчкам / открытиям, каждая строка - это одно действие).

Спасибо!

Ответы [ 2 ]

0 голосов
/ 02 апреля 2020

Когда вы выполняете внутреннее объединение, между a и b, ваши данные фильтруются, когда вы присоединяетесь к a и c, что даст вам неверные результаты. не имея представления о ваших данных и не имея представления о ваших таблицах, это лучшее предположение, которое у меня есть

0 голосов
/ 02 апреля 2020

Почему это удивительно?

У вас есть два объединения, которые, если вы примите их логическое заключение, подразумевают, что

b.[SubscriberKey] = c.[SubscriberKey]

Следовательно, подсчет различных значений будет одинаковым.

Вы не предоставили пример данных или желаемых результатов. Я могу предположить, однако, что вы намереваетесь LEFT JOIN s, чтобы вы получили некоторые значения в одной таблице, которые не совпадают в другой.

...