У меня есть следующие настройки:SQL, чтобы получить TOP ряды отдельной группы
ID | email_ID | email | priority
---------------------------------------------------
1 1 [email protected] 2
2 1 [email protected] 2
3 1 [email protected] 2
4 2 [email protected] 1
5 2 [email protected] 1
6 3 [email protected] 1
7 4 [email protected] 1
Я хочу, чтобы иметь возможность сказать, получить мне TOP 1000 строк, но мои результаты содержат только один email_ID
и выводить в priority
по возрастанию заказ.
я думал что-то вдоль линий:
select * from Table where email_ID in (select top 1 email_ID from Table group by email_ID)
..но я, очевидно, не покрыли заказ priority
. Когда я добавляю это в уравнение, я становлюсь тугим.
так, по первому зову я хотел бы получить
ID | email_ID | email | priority
---------------------------------------------------
4 2 [email protected] 1
5 2 [email protected] 1
второй вызов:
ID | email_ID | email | priority
---------------------------------------------------
6 3 [email protected] 1
третий:
ID | email_ID | email | priority
---------------------------------------------------
7 4 [email protected] 1
четвёртых:
ID | email_ID | email | priority
---------------------------------------------------
1 1 [email protected] 2
2 1 [email protected] 2
3 1 [email protected] 2
Я хочу, чтобы получить партию до 1000 в то время, но каждая партия должна быть уникальной mail_ID
и партии должны выйти в priority
порядке (по возрастанию)
Не могли бы вы показать нам ваш ожидаемый результат? –
Можете ли вы как-то перефразировать то, что именно вы пытаетесь достичь? Ваш вопрос не совсем ясен. –
более подробная информация добавлена. надеюсь, это поможет ! – scgough