Oracle10gからkeySQLでデータ集計、効率的にデータ取り出しする方法とは?

このQ&Aのポイント
  • Oracle10gでデータ管理していますが、自由なデータ加工ができないため、keySQLを用いてデータをExcelとして取り出し、Access2003にインポートして解析しています。
  • しかし、Excelで一度に取り出せるレコード数には制限があり、効率的なデータ取り出しができません。そこで、keySQLを使用して集計し、レコード数を減らしてデータを取り出す方法をご教示いただきたいです。
  • Accessのクエリーデザイン画面では集計ボタンが見当たりませんが、GUI的に集計する方法はあるのでしょうか?もしくはSQL文を直接記述する必要があるのでしょうか?
回答を見る
  • ベストアンサー

Oracle10gからkeySQLで集計データ

Oracle10gでデータ管理していますが、インターフェースを外注した為、自由なデータ加工ができません。この為、keySQLを用いて、データをExcelとして取出し、Access2003にインポートして解析する方法で対応しています。 しかし、Excelで一度に取り出せるレコード数が65500程度に限られ、効率的にデータ取出しが出来ません。そこで、keySQLで、集計してレコード数を減らして取り出したいと思います。 しかし、Accessのクエリーデザイン画面のような集計ボタンが見当たりません。GUI的には集計できないという事でしょうか?クロス集計はできるようなのですが、Accessのような集計は、SQL文を直接記述する方法しかないのでしょうか? keySQLにお詳しい方がおられましたら、データ集計の仕方をご教示下さい。 当方、残念ながら、まだSQL文を直接記述できるレベルにはありません。

  • Oracle
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • coldblade
  • ベストアンサー率20% (2/10)
回答No.1

OracleからCSVファイルへ出力すれば、件数の制限はないです。 CSVファイルをAccessへ投入するのはExcelより便利ですよ。 Accessで SUMとGroup byでSQLで簡単に集計できます。 簡単な例: SELECT ProductID, Avg(UnitPrice), Sum(Quantity) FROM "Order Details" GROUP BY ProductID

psgrade
質問者

お礼

SQL表示機能を使って、SQL文を表示させることによって、keySQLのSQL文の文法を確認できるようになりました。自分で、SQL文を作成して対応したいと思います。 早々にご助言を頂き有難う御座いました。

psgrade
質問者

補足

早速ご回答頂き有難う御座います。 システムを外注で構築した為、保守管理を理由に、オラクルの直接参照を禁じられています。AccessでODBC接続を行おうとしたのですが、ODBCでの接続も禁じられています。 許可されたのが、検索専用のkeySQLで、この場合出力は、Excelとされていて、csvで出力してくれず、一度に取り出せるレコード数は、65534件に制限されてしまいます。 指摘頂いたように、Excelの制限事項をみると、行数は、1,048,576となっていたので、数回分のデータを追加して見ましたが、65534行以降に張り付けできませんでした。

関連するQ&A

  • SPSS集計データをSPSSで再集計するには

    質問です。 SPSSのピボットテーブルで集計したデータをさらにSPSSで集計したい のですが、その場合、一度ExcelやAccessに落としてから再度SPSSに とりこむという手順を踏まないとできないのでしょうか。 <例> 年月   ID  金額 200706  1  4760 200707  1  8670 200708  1  3200 200706  2  5427 200707  2  4287 200708  2  3675 … 200806  1  2539 200807  1  3765 200808  1  8767 200806  2  1254 200807  2  2142 200808  2  5621 … これをSPSSのピボットテーブルで 年   ID  金額合計 2007  1   16630 2007  2   13389 … 2008  1   15071 2008  2   9017 … と集計し、さらに2007年と2008年をクロス集計したいのです。 わかりにくかったらすみません。 ご回答をお願いいたします。

  • KeySQLの代替ソフトありませんか

    現在 Oracle → PostgreSQL に移行しようと考えています。 Oracleからレコード取得操作を主に KeySQL というソフトを使って いますが、KeySQL は PostgreSQL では動作しないため、 PostgreSQL で使える「KeySQLライク」のものを探しています。 どなたか有用なソフトをご紹介いただけませんか。 ※主にKeySQLを使用している目的は、SQL文法をあまり知らなくても  レコードの取得などが行えるためですので、それを満たしたツール  があるといいのですが。

  • アンケートの集計方法

    このたび、アンケートを800枚程度集めました。 これは生活に関する質問で、個人データだけでも6の項目に別れます。 質問数は25項目あります。 個人データは性別・年齢・仕事…などの項目があり、クロス集計をとりたいのですが、Excelがいいのか、Accessがいいのかわかりません。 どちらにしても長所・短所があれば教えて頂きたいのです。 ちなみに、Accessに関しては初心者ですが、勉強中です。

  • データの集計

    上司からいきなり、 『データの管理によるミスの低減化』というテーマで集計データを作ってくれ! という依頼がありました。 なんとなく構想は出来たのですが、エクセルの範囲では不可能ではないか!?と思っています。 その内容ですが、、 (1)A、B、C、D・・・というロットがあるのですが、  それが5つの工程を通過します。  その5つの工程で発生した不良の数や良品の数を最終的に1つのデータに集約して計算することが必要 (2)各工程、1日が終了すると、データを提出し、新しいデータに追記しなければならないので、  前日と当日のデータにAのロットがデータとして  その2つを1つにまとめて集計することが必要。 (3)1つの工程でも4つの同じ工程があるので、A工程1、A工程2、というエクセルデータを作成してあげる必要がある。 別の解説でいいますと、 1つの工程(A)が 4つまであり、それが5工程ある。  (工程は2つのところもあれば4つのところもある) 例:A工程(A1、A2、A3、A4)   B工程 (B1、B2) その中からAロットというもののデータをA~E工程まで吸い出して集計する必要ありだが、別々のPCから入力する為、同時入力できるような事が必要。 上記の説明不十分かもしれませんが、、、 使ったことはありませんがAccessなら出来るのではないかと思っています。 できればexcelのみでやりたいです。 OSはwindows XPです。 差し支えなければ回答お願いいたします。

  • エクセル・アクセスでデータを集計するには

    エクセルもしくはアクセスで以下のようなデータを集計したいのですが。データは5万件ほどあります(countif関数では以下の集計のようにはできませんよね)(エクセルの集計では行が超えます)。 (例) データ 1 1 2 2 2 3 4 4 4 4 5 集計 1 2 2 3 3 1 4 4 5 1

  • アクセスのデータ集計方法(名寄せ)がわかりません。

    アクセスのデータ集計方法に関する質問で、あるソフトの構造がどうしてもわからなくて質問させて頂きました。 1)ソフトの概要 ソフトはアクセスとエクセルで構成されていて、プログラムはVBAをしようしています。「元データ」(以下に詳細説明)をソフトに読み込んでアクセスで集計し、エクセルでグラフを出力する分析用ソフトです。エクセルのグラフは元々作ってあり、アクセスでデータを集計したものをエクセルのセルにリンクする形式のようです。 2)元データとは 元データとは、Aさん~Eさんがある時点でE・F・Gの3つのお店で商品を購入した際の履歴データで、人物ごとに年齢・品目・金額等のデータが1行で表示されています。従って、AさんがE店・F店で商品を購入している場合は、データが2行で表示されています。分析するには、2行データを1行データにするために「名寄せ」をする必要があります。 3)質問 (1)複数レコードを1つのレコードに集計する(名寄せ)にはどうすればよいのか。 (2)品目と金額から、品目ごとの平均金額を出したい場合など、あるデータとあるデータを選んできて集計させるのは、「クエリ」という機能を使うのでしょうか。 (3)上記との関連ですが、例えば国がホームページ上で公開している複数の既存統計をソフトに読み込んで必要データだけを取り出して集計し、エクセルで作ってあるグラフにデータをリンクさせてグラフを出すようなソフトを作ることは可能なのでしょうか。 情報処理が専門ではないので、わかりにくくて申し訳ないです。 大変困っております、よろしくお願いします。

  • クロス集計 エクセル

    アクセスにはクエリにクロス集計がありますが エクセルにもクロス集計と言う機能があるのでしょうか? エクセル2010を持っています。 ピボットテーブルの事を クロス集計と呼ぶのでしょうか?

  • エクセルのデータ集計

    エクセルでデータの集計についての質問です。 商品のデータベースで「商品名」「注文日」「納品日」が入っています。 「注文日」から「納品日」までが入荷を待ち状態ということになります。 ここで、日ごとの納品待ち商品合計数の年平均を取るにはどうすれば良いでしょうか。 エクセルorアクセスで集計する方法を教えてください!! よろしくお願いいたします。

  • oracle10g update件数の取得方法

    oracle10g update件数の取得方法 pl sql(stored procedure)で複数のupdate文を適用します。update後にupdateしたレコード件数をログテーブルにinsertしたいのですが、updateしたレコード件数を取得する方法はありますか?

  • 個数の集計を出したい

    クエリでもテーブルでも可能ならどちらでもいいのですが 図のようなデータの個数の集計を出したいです。 エクセルで言うならば T集計!個数=COUNTIF(Tデータ!籠,T果物名!果物名の1レコード目) みたいなことがしたいのですがどうすればいいのでしょうか? わかりずらくてすいません。 Access2003です。 よろしくお願い致します。