Você pode usar uma junção para isso:
SELECT
d1.value AS product_name,
d2.value AS product_description
FROM
product_description d1 JOIN product_description d2 ON
(d1.id = d2.id AND
d1.reference_field = 'product_name' AND
d2.reference_field = 'product_description')
WHERE
d1.id = 4
Isso funciona melhor se você não tiver muitos campos que deseja incluir em sua consulta, pois precisa adicionar outra Tabela à sua consulta para cada coluna que deseja adicionar. Mas tem a vantagem de poder exibir qualquer número de produtos, não apenas um.