这是一个非常开放的问题,但我认为它对 SQL 的可读性非常有益。
因此,您有一个 Java 程序,并且您正试图从中调用一个巨大的 SQL 语句,其中包含许多子查询和连接。我的问题的起点是这样的字符串常量:
static string MONSTER_STATEMENT =
"SELECT " +
" fields" +
"WHERE "+
" fieldA = (SELECT a FROM TableC) " +
"AND fieldB IN (%s)" +
"AND fieldC = %d " +
"FROM "
" tableA INNER JOIN tableB ON ...";
它稍后会使用 String.format 填充并执行。
你有什么技巧可以让这种东西变得可读?你分开你的内部连接。您是否在字符串中缩进 SQL 本身?你把评论放在哪里?请分享您的武器库中的所有技巧。