私はしばらくMongo-SQLコードに苦労してきましたが、まだあなたの助けが必要です:)
SQL サーバー データベースから MongoDB にデータを転送する際に問題が発生しました。私の問題は、MongoDB に文字列として保存したため、データのようAVERAGE()
な計算を実行できないことです。SUM()
以下のコードを使用して整数として格納されているSQLサーバーデータベースから数値を取得したため、数値は整数になると思いました。値を取得するときに使用することがわかりgetString()
ました。MongoDB で数値が文字列になっているのはそのためですか? それらを整数として取得するにはどうすればよいですか? それらを数値として操作できるようになりたいです!また、SQL サーバーの一部の値は日時であるため、MongoDB ですべての型を正しく取得するには、多数の「if」ステートメントとさまざまな「get」メソッドが必要になります。誰でもこの問題の良い解決策を持っていますか?
StringBuilder orderstatus = new StringBuilder();
orderstatus.append("SELECT * FROM dbo.fact_orderstatus");
PreparedStatement t = connect.prepareStatement(orderstatus.toString());
DBCollection orderstat = db.getCollection("Orderstatus");
ResultSet v = t.executeQuery();
ResultSetMetaData rsm = t.getMetaData();
int column = rsm.getColumnCount();
while (v.next()) {
BasicDBObject orderObj = new BasicDBObject();
for(int x=1; x<column +1; x++){
String namn= rsm.getColumnName(x);
String custNum = (v.getString(x));
if (custNum != null && !custNum.trim().isEmpty()
&& custNum.length() != 0)
orderObj.append(namn, custNum);
}
orderstat.insert(orderObj)