質問編集履歴
2
詳細な内容を追記しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,15 +1,19 @@
|
|
1
|
-
スプレッドシートをデータベースとして利用しWEBアプリケーションを作っているのですが、検索時に下記のような処理(データベースのスプレッドシートからquery関数を利用し、別のスプレッドシートに一時的に表示し、取得する処理)で結果を取得しているのですが、
|
2
|
-
|
1
|
+
スプレッドシートをデータベースとして利用しWEBアプリケーションを作っています。
|
3
2
|
|
3
|
+
データを保持しているスプレッドシートをWEBアプリケーションからキーワード検索(部分一致)を行なって検索結果をHTMLに表示すると言う処理を作りました。
|
4
|
+
しかし、検索時に下記のような処理(データベースのスプレッドシートからquery関数を利用し、別のスプレッドシートに一時的に表示し、取得する処理)で結果を取得しているのですが、まれに対象件数が10件あるのに、1件しか取得できない場合があります。
|
5
|
+
|
4
6
|
原因としては、複数人が同時に使用した場合、結果を一時的に表示するスプレッドシートに何枚もシートを作成され、全てのシートがimpoertrange関数を使用しているため、結果取得に時間がかかってしまっていると思います。
|
5
7
|
|
6
8
|
私の勉強不足で、スピレッドシートをデータベースとして使用す場合の検索の仕方がこの方法か、for~ if~を使用し、1件ずつ確認する方法しか思いつかないのですが、何か別の方法はありますでしょうか?
|
7
9
|
よろしくお願いします。
|
8
10
|
|
11
|
+
記載しているコードは、検索の部分のみ抜粋しています。
|
12
|
+
|
9
13
|
```JavaScript
|
10
14
|
|
11
15
|
function getdata(sql){
|
12
|
-
//例:sql => "SELECT * WHERE Col2
|
16
|
+
//例:sql => "SELECT * WHERE Col2 LIKE '%xxx%'"
|
13
17
|
|
14
18
|
//query関数を貼り付けるスプレッドシート
|
15
19
|
var query_sheet = SpreadsheetApp.openById("[query関数を貼り付けるシートID]");
|
1
GASを使用し、WEBアプリケーションを作っていることを追記しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
スプレッドシートをデータベースとして利用し、検索時に下記のような処理(データベースのスプレッドシートからquery関数を利用し、別のスプレッドシートに一時的に表示し、取得する処理)で結果を取得しているのですが、
|
1
|
+
スプレッドシートをデータベースとして利用しWEBアプリケーションを作っているのですが、検索時に下記のような処理(データベースのスプレッドシートからquery関数を利用し、別のスプレッドシートに一時的に表示し、取得する処理)で結果を取得しているのですが、
|
2
2
|
まれに結果が10件あるのに、1件しか取得できない場合があります。
|
3
3
|
|
4
4
|
原因としては、複数人が同時に使用した場合、結果を一時的に表示するスプレッドシートに何枚もシートを作成され、全てのシートがimpoertrange関数を使用しているため、結果取得に時間がかかってしまっていると思います。
|