Есть несколько синтаксисов для многострочных строк, как вы уже прочитали. Мой любимый стиль Perl:
conn.exec %q{select attr1, attr2, attr3, attr4, attr5, attr6, attr7
from table1, table2, table3, etc, etc, etc, etc, etc,
where etc etc etc etc etc etc etc etc etc etc etc etc etc}
Многострочная строка начинается с% q, за которым следует {, [или (, а затем завершается соответствующим обратным символом.% Q не допускает интерполяцию;% Q делает так, чтобы вы могли писать такие вещи:
conn.exec %Q{select attr1, attr2, attr3, attr4, attr5, attr6, attr7
from #{table_names},
where etc etc etc etc etc etc etc etc etc etc etc etc etc}
На самом деле я понятия не имею, как называются эти типы многострочных строк, поэтому давайте просто назовем их Perl multilines.
Обратите внимание, что независимо от того, используете ли вы Perl multilines или heredocs, как предлагали Марк и Питер, у вас останутся потенциально ненужные пробелы. И в моих примерах, и в их примерах строки «from» и «where» содержат начальные пробелы из-за их отступа в коде. Если этот пробел нежелателен, вы должны использовать объединенные строки, как сейчас.