Я хочу найти наиболее часто используемый продукт, приобретенный каждым покупателем. мой набор данных, как это:Поиск наиболее частого значения в SQL Server 2012
CustomerID ProdID FavouriteProduct
1 A ?
1 A ?
1 A ?
1 B ?
1 A ?
1 A ?
1 A ?
1 B ?
2 A ?
2 AN ?
2 G ?
2 C ?
2 C ?
2 F ?
2 D ?
2 C ?
Есть так много продуктов, поэтому я не могу поставить их в сводной таблице.
Ответ будет выглядеть следующим образом:
CustomerID ProdID FavouriteProduct
1 A A
1 A A
1 A A
1 B A
1 A A
1 A A
1 A A
1 B A
2 A C
2 AN C
2 G C
2 C C
2 C C
2 F C
2 D C
2 C C
Запрос может выглядеть следующим образом:
Update table
set FavouriteProduct = (Select
CustomerID, Product, Max(Count(Product))
From Table
group by CustomerID, Product) FP
Pivot не имеет ничего общего с этим. Сначала выполните запрос, который возвращает каждый избранный продукт. Ты почти там. Затем мы можем помочь с обновлением. –
@ Nick.McDermaid - Я знаю, я только сказал, что если количество продуктов было три или четыре, мы могли бы легко найти любимый продукт через сводную таблицу. но сейчас? – Ariox66
Перейти к началу страницы http://www.sql-server-performance.com/2006/find-frequent-values/ и посмотреть, можете ли вы адаптировать SQL для возврата списка всех клиентов с их любимым продуктом. –