Try
=query(transpose(query(
{transpose(D2:J)},
"select "&"min(Col"&arrayformula(textjoin("),min(Col",true,sequence(1,rows(D2:J),1,1)))&") ",
0)),"select Col2",0)
the core of the formula is to transpose values so that they are in columns, and then calculate the min(Col1), min(Col2), ... until min(ColX)
Explanation
1- transpose your array
{transpose(D2:J)}
2- apply query
3- select min(ColX)
the suite min(ColX) is obtained by
min(Col"&arrayformula(textjoin("),min(Col",true,sequence(1,rows(D2:J),1,1)))
4- finally, transpose the result and select only Col2 to erase the labels