У меня есть случай, когда мне нужно показывать только верхние строки на основе настроек в таблице и порядкового набора.Выберите верхние n записей на основе данных порядка и атрибута
Примерный набор данных ниже показывает двух клиентов; у каждого из клиентов есть другой продукт. С NumRowsToShow
«1» Я хочу показать только одну строку (верхнюю строку на основе порядкового номера) для КАЖДОГО клиента.
| CustomerID | ProductID | Ordinal | NumRowsToShow |
+------------+-----------+---------+---------------+
| 1 |A |1 |1 |
| 1 |B |2 |1 |
| 1 |C |3 |1 |
| 5 |D |1 |1 |
| 5 |E |2 |1 |
| 5 |F |3 |1 |
Результат устанавливается после запроса запуска должен быть
| CustomerID | ProductID |
+------------+-----------+
| 1 |A |
| 5 |D |
В том же случае, если NumRowsToShow
были 1 для CUSTOMERID 1 и 2 для CustomerID 5 я хотел бы видеть что-то подобное.
| CustomerID | ProductID | Ordinal | NumRowsToShow |
+------------+-----------+---------+---------------+
| 1 |A |1 |1 |
| 1 |B |2 |1 |
| 1 |C |3 |1 |
| 5 |D |1 |2 |
| 5 |E |2 |2 |
| 5 |F |3 |2 |
Результат устанавливается после запроса запуска должен быть
| CustomerID | ProductID |
+------------+-----------+
| 1 |A |
| 5 |D |
| 5 |E |
Как это можно сделать?
Включая экранный экран фактического набора результатов с основными моментами того, что я пытаюсь отфильтровать, к чему может быть полезно.
Screencap http://www.harpernet.net/se/cap01.jpg
А что, если строки клиента было три различных 'NumRowsToShow' (скажем 1,2,3)? –
Этого не произойдет; NumRowsToShow поставляется с настройкой на CustomerID. Это то же самое. Это результат нескольких запросов. Клиент/ProductID не являются фактическими наборами результатов, я просто пытаюсь предоставить простой пример того, что я пытаюсь отфильтровать. – sugarcrum