non ho capito al meglio.... mi sfugge il primo e ultimo valore dell'URL. Come appunto dici essendo una stringa primo e ultimo si riferirebbe ad un sort e nulla piu'.
Quello che cerco io è, per ogni sessione, il primo e l'ultimo valore che compare nel sottoinsieme della tabella del campo url.
Ammettiamo che il primo ed ultimo valore siano riferiti alla data-ora di collegamento.

SELECT *, MIN(data) as primo, MAX(data) as ultimo
FROM tabella
where CONCAT(ip,sessionId) = CONCAT('$ip','$sessionId')

oppure se non sai ip e sessionId:

SELECT *, MIN(data) as primo, MAX(data) as ultimo
FROM tabella
GROUP BY CONCAT(ip,sessionId)

il tutto con riserva di aver ben compreso il quesito.

Come ben saprai i dati di min() max() li troverai nella colonna alias.