私は実行するSQL文を構築するためにstringbuilderを使用するのが習慣的です。しかし、それは余分な空白がたくさんで非効率的な文を生成することができます:実行前にSQL文から空白を削除する必要がありますか?
sb.AppendLine (@"SELECT DISTINCT *");
sb.AppendLine (@" FROM ( SELECT col1");
sb.AppendLine (@" , col2");
sb.AppendLine (@" , col3 ");
sb.AppendLine (@" , col4");
sb.AppendLine (@" FROM (SELECT *");
sb.AppendLine (@" FROM TABLE)";
sb.AppendLine (@" WHERE col5= col1 ");
sb.AppendLine (@" AND col6 = col2 ");
sb.AppendLine (@" GROUP BY col1");
sb.AppendLine (@" , col2");
sb.AppendLine (@" ORDER BY col3");
このSQLが問題の一例であるとさえ正しくない可能性があります。
実行するコマンドオブジェクトに渡す前に空白を削除する必要がありますか?または、コマンド自体がこれを行うのでしょうか?これは考えてみる価値のないマイクロ最適化ですか?
私は測定可能な違いはないと思います。 –
@juergend - それは多くの要素に依存します。あなたのサーバーが100秒のクエリで1秒間ヒットしている場合はどうなりますか?私はそれが測定可能になると確信しています。 * [はい、これはリアルタイム環境で発生します。 )* – MatBailie
*咳*ストアドプロシージャ*咳* – onedaywhen