Sur la base de votre commentaire selon lequel page1, page2 .. sont des colonnes de clés étrangères, je pense que c'est simple.
Quelque chose comme :
SELECT
s.unique_id, s.counter, s.sequence_length, s.yearmonth,
s.mod_date_stamp,
pg1.page_url as page1, pg2.page_url as page2,
pg3.page_url as page3, pg4.page_url as page4,
pg5.page_url as page5
FROM
session s
LEFT JOIN
sessionpage pg1 ON pg1.unique_id = s.page1
LEFT JOIN
sessionpage pg2 ON pg2.unique_id = s.page2
LEFT JOIN
sessionpage pg3 ON pg3.unique_id = s.page3
LEFT JOIN
sessionpage pg4 ON pg4.unique_id = s.page4
LEFT JOIN
sessionpage pg5 ON pg5.unique_id = s.page5
Je pense que cela fonctionnera.
Mais lorsqu'il n'y a pas de valeur sur la colonne (sur la session de table), vous devez utiliser null au lieu de 0 (zéro).
Une autre astuce, sur l'instruction SELECT, si vous ne voulez pas de valeurs NULL, vous pouvez utiliser :
COALESCE(pg5.page_url, ' ') as page5