Eu acho que é melhor fazer isso via PHP na camada de aplicação, mas você pode fazer isso com
LEAST()
e GREATEST()
:SELECT t.id,t.description,
LEAST(t.shop1,t.shop2,t.shop3) as lowest,
(t.shop1+t.shop2+t.shop3) - (LEAST(t.shop1,t.shop2,t.shop3) + GREATEST(t.shop1,t.shop2,t.shop3)) as middle_one
GREATEST(t.shop1,t.shop2,t.shop3) as biggest
FROM YourTable t