Nie potrzebujesz do tego dynamicznego SQL (a jeśli to możliwe, należy unikać dynamicznego SQL). Zamiast tego możesz użyć instrukcji CASE. Możesz to zrobić za pomocą jednej instrukcji, ale podzieliłem ją na potrzeby wyświetlania:
DECLARE @brand VARCHAR(100) = (SELECT brand FROM articles a WHERE a.id='12345678')
SELECT CASE @brand
WHEN 'BRAND_A' THEN BRAND_A_PRICE
WHEN 'BRAND_B' THEN BRAND_B_PRICE
WHEN 'BRAND_C' THEN BRAND_C_PRICE
ELSE 0 END AS PRICE
FROM prices
WHERE id='12345678'