2016-03-27 6 views
1

これはゴランの知識が全くないことに基づく質問です。長いクエリーを読みやすくする方法があるかどうかを調べることです。ゴランのロングクエリー

私の試みは、SQLテキストを変数に入れて、変数を実行することです。

擬似コード(なし実際のコード):

var query = 
SELECT * FROM foo 
UNION ALL 
SELECT * FROM bar 
UNION ALL 
SELECT * FROM other 
... 

db.prepare (var query) 
db.query (var query) 

これはおそらくばかな質問ですが、私は、検索や、外出先での長いクエリがより多くの「読み」を作るためにどのように何の手がかりを発見しました。ほとんどの例は "hello world"レベルに基づいています。現実世界では、クエリはかなり長くなる可能性があります。

TIA、

+0

[マルチライン文字列](http://stackoverflow.com/questions/7933460/how-do-you-write-multiline-strings-in-go)を使用できますか? –

+0

変数を複数行の文字列として宣言することはできますか? – sibert

+1

ええ、複数行の文字列リテラルとしてクエリを宣言します。 –

答えて

4

このクエリは、複数行の文字列リテラルとして宣言できます。

query := ` 
    SELECT * FROM foo 
    UNION ALL 
    SELECT * FROM bar 
    UNION ALL 
    SELECT * FROM other` 

DB.Queryで使用してください。

rows, err := db.Query(query) 

あなたが使用できるさまざまなSQLデータベースのdriversさまざまながあります。彼らはすべてDBオブジェクトを扱うことができます。したがって、適切にDB.Query DB.Prepareを使用することができます。詳細についてはdatabase/sqlパッケージのドキュメントを確認してください。

+1

ありがとうございました!右上に。 – sibert

関連する問題