ST_Touches sólo devuelve true para las líneas que se intersecan los puntos inicial o final, no el espacio a lo largo de la línea, de modo que no debe trabajar en su caso, como se esperaba. ST_Overlaps, sin embargo, debería funcionar exactamente como usted se propone:
SELECT ST_Overlaps('LINESTRING(0 0, 2 0)'::geometry,
'LINESTRING(1 0, 3 0)'::geometry)
>>> t
SELECT ST_Overlaps('LINESTRING(0 0, 2 0)'::geometry,
'LINESTRING(1 0, 2 1, 2 0, 3 0)'::geometry)
>>> f
Acabo de probar tanto en PotGIS 2.2.0 y 2.3.2, por lo que debe estar trabajando en la tuya también. Independientemente, usted puede ir un paso más y trabajar con ST_Relate. Esto pruebas de la función de DE-9IM topología, entonces usted debería ser capaz de controlar exactamente lo que usted desea.
Específicamente, usted quiere interior-interior de interacción, por lo que su matriz debería ser algo como '1********' (las otras células dependerá de lo que otros topológico restricciones que pueda tener). Aviso que esto también acepta las líneas de estar completamente dentro de otra, un caso especial de la colinealidad, donde ST_Overlaps no.
SELECT ST_Overlaps('LINESTRING(0 0, 2 0)'::geometry,
'LINESTRING(1 0, 2 0)'::geometry)
>>> f
SELECT ST_Relate('LINESTRING(0 0, 2 0)'::geometry,
'LINESTRING(1 0, 2 0)'::geometry,
'1********')
>>> t
Si no incluso ST_Relate está trabajando, entonces usted podría tener problemas topológicos con sus datos.