У меня есть таблица (DF)Возвращение строки, где поле имеет определенное количество
+----+------+-----+
| ID | PT | AVG |
+----+------+-----+
| A | 1.00 | 2.5 |
| A | 2.00 | 3.5 |
| B | 1.00 | 2.8 |
| B | 2.00 | 2.6 |
| B | 3.00 | 3.9 |
+----+------+-----+
Я пытаюсь написать простое заявление SQL, чтобы вытащить идентификатор, который имеет 3 очка.
Я попробовал эти 2 заявления, но я делаю это неправильно
1. Returns all rows again
SELECT * FROM DF
WHERE PT BETWEEN '1.000' AND '3.000'
2. Returns counts of rows
SELECT * FROM DF b
WHERE b.PT=(SELECT COUNT(DISTINCT A.PT) FROM DF A WHERE A.ID=B.ID)
Мой желаемый результат:
+----+------+-----+
| ID | PT | AVG |
+----+------+-----+
| B | 1.00 | 2.8 |
| B | 2.00 | 2.6 |
| B | 3.00 | 3.9 |
+----+------+-----+