В Mysql, я хочу, чтобы выбрать нижние 2 пунктов из каждой категорииSQL запрос, чтобы выбрать нижний 2 из каждой категории
Category Value
1 1.3
1 4.8
1 3.7
1 1.6
2 9.5
2 9.9
2 9.2
2 10.3
3 4
3 8
3 16
Давая мне:
Category Value
1 1.3
1 1.6
2 9.5
2 9.2
3 4
3 8
Прежде чем я мигрировали из sqlite3 я имел чтобы сначала выбрать самый низкий из каждой категории, а затем исключить все, что с этим связано, мне пришлось снова выбрать самый низкий из каждой категории. Тогда выигрывает все, что соответствует этой новой самой низкой или меньшей категории. Это также выберет более 2 в случае галстука, что было бы раздражать ... У него также было очень много времени.
Моя конечная цель - подсчитать количество раз, когда человек находится в одном из наименьших 2 категории (есть также поле имени), и это та часть, которую я не знаю, как это сделать. Благодаря
Есть также идентификатор, который уникален для каждой строки? –
Поскольку вам не нравятся галстуки, как вы планируете их избегать? Любое решение, к которому прибегает любой человек, должно будет каким-то образом иметь дело со связями, поэтому вы должны попытаться конкретно изложить правила, регулирующие их. –
Я пометил этот вопрос с помощью 'great-n-per-group', потому что он похож на многие другие вопросы, заданные в StackOverflow с этим тегом. Хотя я понимаю, что вы запрашиваете * наименее * значения для каждой группы, техника для ее решения одинакова. –