Ограничение результатов в запросе SQL на основе различимости в произвольном столбце - PullRequest
1 голос
/ 05 ноября 2010

Мне нужно написать SQL-запрос, извлекаемый из таблицы, в которой хранятся записи каждый раз, когда один из наших продавцов разговаривает с клиентом.Соответствующие столбцы: (1) идентификатор сотрудника продавца, (2) номер счета клиента и (2) дата разговора.

Часто продавцы разговаривали с клиентами несколько раз в течениеотчетный период (календарный месяц), поэтому будет несколько записей, которые почти идентичны, за исключением даты.

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

Итак, если продавец Джон говорил с клиентом ABC о10/10, 10/18 и 10/25 Мне нужно получить запись 10/25, но не остальные.

Это база данных Sybase.

У меня такое чувство, что я могуупустить что-то простое здесь, но я попытался найти и остаться в тупике.Любая помощь с благодарностью.

Спасибо за ваше время,

Джон

1 Ответ

1 голос
/ 05 ноября 2010

Гадание по именам столбцов ...

  SELECT employee_id, client_acct_no, 
         MAX(conversation_date) AS MOST_RECENT_CONV_DATE
    FROM mytable 
   WHERE conversation_date BETWEEN DATE '2010-10-01' AND DATE '2010-10-31'
GROUP BY employee_id, client_acct_no

Документация для GROUP BY предложения.

...