• 締切済み

テーブルの作り方で困っています

Oracle10gを使っています。 項目の順番がバラバラなcsvのデータを並べ換えてテーブルに登録したいのですが、 項目数はcsvによって違っていて、テーブルに登録する項目の数もcsvによって変わります。 例) AAA.csvの場合 元々は1,2,3,4,5,6の順番で項目が並んでいるが、登録する項目と順番は→3,1,2,4,5 BBB.csvの場合 元々は1,2,3,4,5,6の順番で項目が並んでいるが、登録すると項目と順番は→2,3,1,5,4,6 (AAA.csvとは違って、6番目の項目もテーブルに登録したい) といった感じです。 登録するテーブルはデータをプールする場所で、本登録するテーブルにこのテーブルのデータを移したら移し元のデータを消そうと思っています。 登録する側のテーブルの項目数がはっきりと決められないので、毎回テーブルをドロップ→違う項目数で再作成しようかとも思ったのですが、複数の人がこの処理を行いたい場合はやっぱりやめておいたほうがいいですよね? 分かり難い質問で申し訳ありません…。 何か良い知恵がありましたら、ご教授願います。 よろしくお願いします。

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

みんなの回答

回答No.1

こんばんは。 用途がいまいちわからないです・・・。 それを取り込んだ後、何するんですかね??? トランザクションの間で使うだけなら、テンポラリテーブルでもいいかと・・・。

chinapooon
質問者

補足

早速の回答ありがとうございます。 説明の内容がわかりづらくてすみません。 用途としては、外部から送られてきた様々な並びのデータを一時的にテーブルに取り込み、その中で並び替え・不要なデータを削除して、次のテーブルへと受け渡す、一次処理のような感じです。 並び替えの規則は、別マスタテーブルとして持とうと思っています。 このような世界に入ってまだ浅いため、テンポラリテーブルのことを知らなかったので、 調べてみて「なるほど!」となりました! ありがとうございます!

関連するQ&A

  • oracle テーブルコピー

    はじめまして 現在、oracle9iを使い、開発しています。 宜しければご回答の方をお願い致します。 スキーマAAAにあるテーブルBBBをテーブルデータは不要として スキーマCCCに同じ定義のテーブルBBBをコピー作成したいと考えています。 どのように行えば、良いのでしょうか。 当方、初心者ですが、何卒ご回答の程、よろしくお願い致します。

  • 格納するデータ項目数が不定の場合のテーブルのつくりかた

    格納するデータの数が決められていない場合のテーブルのつくりかたについて質問です。 予め入力項目数が決定している時は、その数に合わせて列をつくればいいのですが、大きい入力用テキストボックスが一つだけあって、ユーザにaaa,bbb,ccc,123といったようにデータを入力してもらい、カンマで区切られた一つひとつのデータをデータベースに格納するといったことをしたい場合、データが一つだけの場合も100を越えるような場合もあるので、テーブルをどのように構築すればいいのか困っています。 アドバイスお願いいたします。

  • powershellでcsvの集計

    powershellでのcsvデータの集計をしたいのですが、 よくわからず困っています。 csvのデータは、 aaa1,10,10,20 bbb1,100,100,200 aaa1,5,5,6 ccc1,50,50,60 … となっており、キーとなる項目が同じものは、数値を集計して 再度csvにするというものです。(aaa1が同じなので集計) aaa1,15,15,26   bbb1,100,100,200 ccc1,50,50,60 … という感じです。 よろしくお願いします。

  • ExcelVBAでテーブルの更新

    ExcelVBAなんですが、 A.CSVをテーブルBの項目と上から順番に照らし合わせ、内容が違う場合にA.CSVの内容でテーブルBの項目を更新するというものを作りたいと思っています。 DB接続し、if文で同じ内容かどうかを分ける事はできたのですが、その後がどうしてもわかりません>< 色々なサイトを見ていると、Rs.Editというものが使われているのですが、何故か使えないのです。 メソッドまたはデータメンバが見つかりませんというエラーが出ます。 これは何が原因なのでしょうか??

  • oracle 条件分岐について

    oracle10gです。 テーブルAから取得した項目aaaが"1"のとき、 テーブルBから項目bbbを取得する それ以外の場合、 テーブルCから項目cccを取得する という内容のSQLを一度に実行したいのですが、 ifやcaseで実行可能でしょうか。 ご教授いただきたいです。 よろしくお願いいたします。

  • テーブル結合の方法でのパフォーマンス

    テーブルを結合する順番でパフォーマンスが違ってくるものなんでしょうか。 FROM aaa, bbb aとbの順番を入れ替えるだけでパフォーマンスが変ることってあるんですかね。 また、カンマ(,)で結合を指定するよりSTRAIGHT_JOIN指定したほうが速いとか。 SELECT aaa.x, bbb.y FROM aaa, bbb; SELECT aaa.x, bbb.y FROM aaa STRAIGHT_JOIN bbb; おねがいします。

    • ベストアンサー
    • MySQL
  • 800万件のテーブル読み込みについて

    oracle10G(10.2.0.1)をWin2003 SP2環境で使用しています。 あるテーブル(Aテーブル)のデータ量が800万件あり、そのテーブルを読み込むSQL(B.SQL)が4分程度かかっていました。 ある日、Aテーブルの項目名を変更することになりましたので、すべてのデータをCSV形式で保存し、テーブルをdropcreate後にsqlローダーにてインポートしたところ、B.SQLが15分かかるようになってしまいました。 B.SQLは、項目名を変えただけで、インデックスも削除する前と同じ状態にしてます。 どこから調査すればよいのでしょうか? よろしくお願いいたします。

  • CSVファイルに変換する

    以下のようなテキストファイルをCSVファイルに変換したいです。 ======================================================= AAAテーブル [DATA 1] CARAM_1 : 1 CARAM_2 : 2 [DATA 2] CARAM_1 : 2 CARAM_2 : 3 BBBテーブル [DATA 1] CARAM_1 : 1 CARAM_3 : 3 [DATA 2] CARAM_1 : 2 CARAM_3 : 3 ======================================================= AAAテーブルとBBBテーブルのデータはCARAM_1でリンクしています。 できれば以下のような形で見れるといいんですけど。。。 ======================================================= CARAM_1 CARAM_2 CARAM_3 DATA_1 1 2 3 DATA_2 2 3 3 ======================================================= もし、変換方法やいいツールをご存知の方がいらっしゃいましたら、教えてください。 m(__)m

  • 異なるスキーマからデータを抽出するには?oracl、PL/SQL

    Oracle初心者です。検索してもなかなかhitしないので、質問させていただきます。 aaaとbbbというスキーマがあると仮定します。 aaaにはパスワードテーブル bbbにはユーザテーブルがあるとします。 ユーザテーブル、パスワードテーブルにはそれぞれuser_idカラムがあり、そのuser_idをキーにして、aaaのpasswordカラムのデータを取得したいと思っています。 sql*plusでbbbに接続して、作業をしています。 言語はPL/SQLを使用しています。 単純に SELECT a.password FROM aaa.パスワードテーブル a, bbb.ユーザテーブル b WHERE a.user_id = b.user_id とすれば良いのかと思っていたら、違うようで、オブジェクトが存在しないと言うエラーになりコンパイルが通りません。 このよう違うスキーマのテーブルを参照する場合、どのようにすれば良いのでしょうか?

  • AccessのSELECT文の結果でナンバリングする方法

    Access2000のクエリで、以下のSQL文を作っています。  SELECT TB.項目1, TB.項目2, TB.項目3  FROM TB  ORDER BY TB.項目1, TB.項目2; テーブルには、以下のデータが登録されています。  項目1 項目2 項目3  ----------------------  あああ 345 CCC  いいい 234 AAA  あああ 123 BBB 現在のクエリ結果表示は以下のようになっています。  項目1 項目2 項目3  ----------------------  あああ 123 BBB  あああ 345 CCC  いいい 234 AAA これを、以下のようにナンバリングをつけて結果表示するSQL文を教えていただけないでしょうか?  No 項目1 項目2 項目3  ----------------------  1 あああ 123 BBB  2 あああ 345 CCC  3 いいい 234 AAA