Вы ищете что-то вроде ниже-
SELECT
A.subject_id,
A.id,
A.min_time,
A.max_time,
A.time_1,
A.value
FROM table A
INNER JOIN(
SELECT subject_id, MIN(value) Value
FROM table
GROUP BY subject_id
) B ON A.subject_id = B.subject_id
AND A.Value = B.Value
Если вам не требуется выбирать значение столбца Time_1, этот следующий запрос будет работать (как я вижу значения в столбце min_time и max_time одинаковы длята же группа) -
SELECT
A.subject_id,A.id,A.min_time,A.max_time,
--A.time_1,
MIN(A.value)
FROM table A
GROUP BY
A.subject_id,A.id,A.min_time,A.max_time
Наконец, лучший подход - если вы можете применить что-то вроде CAST (Time_1 AS DATE) к вашему столбцу времени.Это будет учитывать только часть даты независимо от части времени.Запрос будет
SELECT
A.subject_id,A.id,A.min_time,A.max_time,
CAST(A.time_1 AS DATE) Time_1,
MIN(A.value)
FROM table A
GROUP BY
A.subject_id,A.id,A.min_time,A.max_time,
CAST(A.time_1 AS DATE)
-- Make sure the syntax of CAST AS DATE
-- in BigQuery is as I written here or bit different.