JDBC 커넥터가있는 App 스크립트를 사용하여 MySQL 통계 데이터베이스와 연결을 만듭니다. 단일 스크립트에서 여러 개의 쿼리를 실행하여 데이터베이스의 특정 정보를 단일 시트로 가져오고 싶습니다. 모든 쿼리의 결과는 모두 같은 구조로되어 있습니다 (모두 그룹 별 날짜입니다). YEAR, MONTH, DAY, VALUE와 내가 YEAR, MONTH, DATE 열을 고정시킬 수 있는지 궁금 해서요. 다른 모든 결과가 내 결과의 다음 열로 채워지는지 궁금합니다. , 골 B 년 : 달, 골 C : DAY는, 골 D가 : 쿼리 한 결과, 골 E가 : 뭔가 골는 A 하나의 시트에 Google 스크립트 및 JDBC 커넥터가있는 여러 개의 SQL 쿼리
이
쿼리 2 .... 여기에서 결과는 내가 시작한 일입니다
function loadData() {
var sheet = SpreadsheetApp.getActiveSheet();
var instanceUrl = 'jdbc:mysql://' + address;
var dbUrl = instanceUrl + '/' + db;
var conn = Jdbc.getConnection(dbUrl, user, userPwd);
var stmt = conn.createStatement();
stmt.setMaxRows(10);
var results = stmt.executeQuery('Select YEAR(dateCreated) as yearAdded,MONTH(dateCreated) as monthAdded, DAY(dateCreated) as dayAdded,sum(amount)/100 from stripeTransactions GROUP BY yearAdded ,monthAdded,dayAdded;');
var numCols = results.getMetaData().getColumnCount();
while (results.next()) {
var rowArray = new Array();
for (var col = 0; col < numCols; col++) {
rowArray.push(results.getString(col+1));
}
sheet.appendRow(rowArray);
}
results.close();
stmt.close();
var stmt2 = conn.createStatement();
stmt2.setMaxRows(10);
var results2= stmt2.executeQuery('Select YEAR(dateAdded) as yearAdded,MONTH(dateAdded) as monthAdded, DAY(dateAdded) as dayAdded,sum(amount) from itunestransactions GROUP BY yearAdded ,monthAdded,dayAdded;');
var numCols2 = results2.getMetaData().getColumnCount();
while (results2.next()) {
var rowArray2 = new Array();
for (var cal = numCols; cal < numCols2; cal++) {
rowArray2.push(results2.getString(cal+1));
}
sheet.appendRow(rowArray2);
}
results2.close();
stmt2.close();
}
감사 (이 스크립트는 내가 각 쿼리는 다음 중 하나에있는 모든 시트를 병합에 대한 결과 당 한 장을 가지고있을 것 같아요, 모든 결과 행을 추가하지만 난에서 한 장에 그것을 할 오히려 것와 처음)