I am just the opposite I cannot see how a long string is easy to read. If you have a string that is very long ( say 100 select fields, 10 joins, a lengthy where clause etc.. ) If we are stopped in the debugger we have a tool that divides the query and puts each statement on its own line with indentation depending on place in query. When we actually write a hard coded query we put each member on its own line.
SELECT f1, f2, f3, f4, ... FROM tbl1 INNER JOIN tbl2 INNER JOIN tbl2 WHERE....
becomes
SELECT f, ;
f2, ;
f3, ;
....
FROM tbl1;
INNER JOIN tb2;
ON .....;
INNER JOIN tb3;
ON ....
WHERE......
AND .........