Oracle

全3478件中161~180件表示
  • テーブル結合について

    テーブルの結合についてお聞きしたいことがあります。 カラム「KEY」を結合条件に テーブルA、B、Cを結合して【取りたい結果】のようなデータを取りたいと思っています。 しかし、テーブルAにBとCをLEFT JOINを結合した所、 【取得された結果】のデータが取得されました。 どのような結合をしたら期待通りの結果が得られるのでしょうか? 回答宜しくお願いします。 【取得された結果】 key dataA dataB dataC ------------------------------------------------- 1 A-1 B-1 C-1 A-1 B-1 C-2 A-1 B-1 C-3 2 A-2 3 A-3 【取りたい結果】 key dataA dataB dataC ------------------------------------------------- 1 A-1 B-1 C-1 A-1 C-2 A-1 C-3 2 A-2 3 A-3 【テーブルA】 key dataA --------------------- 1 A-1 2 A-2 3 A-3 【テーブルB】 key dataB --------------------- 1 B-1 【テーブルC】 key dataC --------------------- 1 C-1 1 C-2 1 C-3

  • Oracle VM VirtualBoxについて

    先日までOracle VM VirtualBoxを使ってc++でプログラムを書いていたのですが、Oracleを閉じる際、保存が完全にされない内に強制終了してしまい、それ以降、起動することができなくなってしまいました。Oracleは仮想アプライアンスのインポートをして起動させて使っていたはずなんですが... 分かりにくい文章ですみません。 どうすればまた、起動することができるようになりますか?

  • object browser で処理を中断する方法

    お世話になっております。 現在、oracleの11gの環境に対して object browser10を使用して環境構築を行っています。 DMPファイルをエクスポートし別環境に対して出力したデータを投入しているのですが この際にインポートの処理を中止したいとき、処理を中止するような方法等はあるのでしょうか? object browser のプロセスを終了してもバックグラウンドで処理が続けられていますので 処理を中止する方法がありましたらご教授のほどお願いします。 なお、11gの環境にはそのほかにEnterprise Managerが導入されています。 以上、よろしくお願いします。

    • ベストアンサー
    • heka_11
    • Oracle
    • 回答数1
  • SQLでテーブルを結合した結果を取り出し

    SQLで以下の様なテーブルがあります。 tableA、tableB、tableCを使って、IDとNUMとRANKを結合し、 ID毎に、 RANKが1つでもあったら、”○”でその数を RANKが1つもなかったら、”×”で0を 取り出したい。 「oracle10g」です。 -- tableA ID,NUM,NAME,・・・・・ 000001,001, 000001,002, 000001,003, 000002,001, 000003,001, 000003,002, -- tableB ID,NUM,RANK 000001,001,A 000001,001,B 000001,001,C 000001,002,A 000001,003,C 000002,001,B 000002,002,B 000003,001,A 000003,002,A 000003,002,C --tableC RANK,NAME A, B, C, 結果として、 ID,RANK,判定,個数 000001,A,○,2 000001,B,○,1 000001,C,○,2 000002,A,×,0 000002,B,○,2 000003,A,○,2 000003,B,×,0 000003,C,○,1 を得たいです。 どのようなSQLにしたらよいか、よろしくお願いします。

  • SQL文の問題がよくわかりません。

    データが多すぎるので書き込めなくてすみません。 SQL文がよくわかりません。主にOracleでやってます。 表の名前 hyou1-社員のマスタ 社員コード、名前、職種、給与等級 hyou2-販売のマスタ 顧客コード、商品コード、販売数 「」は抽出例です。 (1)hyou1において給与等級が多い人の社員コードを検出 職種順に表示をする。「社員コード、職種」 (2)hyou1において給与等級平均より給与等級が多い人の職種を検索「職種」 (3)hyou1において給与等級平均より給与等級が多い人の職種毎の人数および平均給与等級の検索「職種、人数、平均給与等級」 (4)hyou1において給与等級が1または3または5である人を検索「全列」 (5)hyou2において、顧客コードが'1992’の人が購入したデータを検索「顧客コード、商品コード」 (6)hyou2において、顧客コードが’1992’である人が購入したデータを検索「顧客コード、氏名、商品コード」 (7)hyou2において、顧客名(氏名)’山田太郎’さんが購入したデータを検索「顧客コード、氏名、商品コード」 (8)hyou2において顧客コードが’1992’である人が購入した商品と同じ商品を購入した人を検索{全列」 (9)hyou2において販売数の平均「販売数平均」 (10)hyou2において販売数の平均以下の購入者を検索「全列」

  • EnterpriseManagerに再接続できない

    環境は次のようになっています Windows7 SP1 64bit VMware Player 5.0.3 for Windows 32-bit and 64-bit CentOS-5.2-i386 オラクルマスターBronze11gの資格を取りたいと思い最近勉強を始めました。 Oracle Database 11g R2 をインストールしようと思い↓のサイトに書かれているとおりに作業を進めました。 http://www.asami.asia/tech/oracle/11gR2-install.html 無事にOracleEnterpriseManagerにログインが成功したものの、エミュレータの電源を一度切り、再びエミュレータを立ち上げるとOracleEnterpriseManagerにはもう繋がらなくなっていました。「https://localhost.localdomain:1158/em/」と入力するとFireFoxには次のようなメッセージが表示されます。 「正常に接続できませんでした localhost.localdomain:1158 のサーバへの接続を確立できませんでした。 サイトアドレスは有効なようですが、接続を確立できませんでした。」 どうすれば再びログインすることができるのでしょうか?

    • ベストアンサー
    • SAE3549
    • Oracle
    • 回答数2
  • Oracle インストールできない

    こんにちわ Oracleをインストールしようとしていますができません。 Oracleのインストールを書籍やサイトを見ながら何度も試みていますが未だできたことがありません。 以下に私が行った手順を記載致します。 手順1:http://www.oracle.com/technetwork/jp/indexes/downloads/index.html 上記のサイトから以下の2つのzipをダウンロード ・winx64_12c_database_1of2 ・winx64_12c_database_2of2 手順2: winx64_12c_database_1of2を回答しインストーラを起動 手順3:インストーラにて以下を順番に設定する ・セキュリティ・アップデート ・ソフトウェアの更新 ・インストール・オプション ・システム・クラス ・Oracleホームのユーザ選択 ・標準インストール ・前提条件のチェック ・サマリー 手順4:サマリーの所でインストールボタンが活性化されたので押下 しばらくするとファイルがありませんとのエラーが度々出て、続行を押して無視していると 進行状況59%の辺りから進まなくなります。 エラーは添付画像参照です どうすればインストールができますでしょうか 以上よろしくお願いいたします

  • 特定条件での連番の振り方を教えて下さい

    以下のようなテーブルがあります。 納品データ 注文番号 売上番号 連番 商品名 11111    2      1   さしすせそ 11111    2      2   たちつてと  11111    3      1   なにぬねの 11111    4      1   はひふへほ 売上データ(既存データ) 注文番号 売上番号 連番 商品名 11111    1       1   あいうえお 11111    1       2   かきくけこ 注文番号は注文毎に付与される番号 売上番号は発送毎に付与される番号 連番は売上番号毎に付与される連番 毎回 納品データを売上データに取り込みます。 連番に関しては、 納品データと売上データで連番は連動しておらず、 売上データに納品データと同等の注文番号があれば、 注文番号の最大連番数を+1した番号で取り込みます。 更新後、売上データは、 注文番号 売上番号 連番 商品名 11111    1       1   あいうえお(既存データ) 11111    1       2   かきくけこ(既存データ) 11111    2       3   さしすせそ 11111    2       4   たちつてと 11111    4       5   なにぬねの 11111    5       6   はひふへほ としたいのです。 SELECT (SELECT 納品データ.連番+(SELECT NVL(MAX(売上データ.連番),0) FROM 売上データ WHERE 売上データ.注文番号 = 納品データ.注文番号) AS 連番) FROM 納品データ で売上データの連番+1はできたのですが、 売上番号が違う場合は、連番が1になるパターンとなり、 納品データ 注文番号 売上番号 連番 商品名 11111    2       1   さしすせそ 11111    2       2   たちつてと  11111    3       1   なにぬねの ← 11111    4       1   はひふへほ ← 上記SQLですと、 更新後、売上データは、 注文番号 売上番号 連番 商品名 11111    1       1   あいうえお(既存データ) 11111    1       2   かきくけこ(既存データ) 11111    2       3   さしすせそ 11111    2       4   たちつてと 11111    4       3   なにぬねの ← 5にしたい 11111    5       3   はひふへほ ← 6にしたい となり、連番となりません。 どのようにSQLを書けばよいのか、困っています。 どうか、ご教示お願い致します。

    • ベストアンサー
    • boooone
    • Oracle
    • 回答数1
  • Oracle-Perlの接続

    Oracle と Perl の接続で悩んでいます。 申し訳ありませんが何方かご教授下さい。 OS:Red Hat Enterprise Linux ES release 4 Perl:perl v5.8.5 DB:oracle-xe-univ-10.2.0.1-1.0.i386 ドライバーは以下をインストールしてあります。 perl-DBD-Pg-1.31-6 perl-DBD-MySQL-2.9004-3.1 perl-DBI-1.40-8 以下もインストールしてみましたが駄目でした # rpm -ivh oracle-instantclient12.1-basic-12.1.0.1.0-1.i386.rpm # rpm -ivh oracle-instantclient12.1-devel-12.1.0.1.0-1.i386.rpm # rpm -ivh oracle-instantclient12.1-sqlplus-12.1.0.1.0-1.i386.rpm 環境変数の設定(.bash_profileに以下を設定) . /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/oracle_env.sh Perlでサンプルプログラムを作成して、他の同等のサーバでは正常に動作確認した プログラムを、このサーバで実行すると以下の様なエラーが出ます。 [oracle@IJYOU]$ perl test_db.pl install_driver(Oracle) failed: Can't locate DBD/Oracle.pm in @INC (@INC contains: /usr/lib/perl5/5.8.5/i386-linux-thread-multi /usr/lib/perl5/5.8.5 /usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.4/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.3/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.2/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.1/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.5 /usr/lib/perl5/site_perl/5.8.4 /usr/lib/perl5/site_perl/5.8.3 /usr/lib/perl5/site_perl/5.8.2 /usr/lib/perl5/site_perl/5.8.1 /usr/lib/perl5/site_perl/5.8.0 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.4/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.3/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.2/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.1/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.5 /usr/lib/perl5/vendor_perl/5.8.4 /usr/lib/perl5/vendor_perl/5.8.3 /usr/lib/perl5/vendor_perl/5.8.2 /usr/lib/perl5/vendor_perl/5.8.1 /usr/lib/perl5/vendor_perl/5.8.0 /usr/lib/perl5/vendor_perl .) at (eval 1) line 3. Perhaps the DBD::Oracle perl module hasn't been fully installed, or perhaps the capitalisation of 'Oracle' isn't right. Available drivers: ExampleP, Pg, Proxy, mysql. at /home/oracle/test2_setting.pl line 18 どうか何方かお願いします。

  • NLS_LENGTH_SEMANTICS変更の影響

    既にデータベースをOracle 11gR2にて構築していて、初期化パラメータ「NLS_LENGTH_SEMANTICS」をデフォルトのByteベースからCharベースに変更しようとしています。この手順と影響範囲が知りたいです。 (1) 手順 私の理解では単純にSYSユーザにて以下を実行する。データベースの再起動は不要で有効になる。 SQL> ALTER SESSION SET NLS_LENGTH_SEMANTICS='CHAR'; 正しいでしょうか? (2) 影響範囲 SID上に構築しているすべてのスキーマ上のテーブルに適用される、で正しいでしょうか? また、既存テーブルと新規テーブルという意味では、既存テーブルには影響を与えない、らしいのですが、そうなのでしょうか? 新しくテーブルを作成した場合にのみCharベースになるということでしょうか。その場合、既存テーブルもCharベースに変更するにはどのような手順を踏めばよいのでしょうか?(例)テーブルのエクスポート→テーブルのドロップ→テーブル再作成→データのインポート?など、思いつきですがよい方法があれば教えてください) 以上、宜しくお願いします。

  • OracleとWebアプリ

    OracleをDBとして利用し、 Webアプリの開発を行うとしています。 フレームワークを利用して作成しようとしているのですが、 Oracle と CakePHP の情報が少なく困っています。 OracleをDBとして利用し、 Webアプリをフレームワークで作成する場合、 どの言語で、どのフレームワークを使用するのが一番お勧めでしょうか。 PHP?Ruby?java? ご教授お願いします。

  • Oracle12cでユーザのSQLPLUSログイン

    基本的な質問ですみません。Oracle 12cを初めて使うのですが、すごく単純に、ユーザを作成し、そのユーザでデータベースオブジェクト(テーブルなど)を作成する拡張子が.sqlのスクリプトを流したいです。 11gまでの場合、システムユーザでCREATE USERしたのちに、コマンドプロンプトを立ち上げて C:\Scripts> SQLPLUS <USER>/<PASSWORD> @createtables.sql とするだけで良かったと思います。 今回、12cではユーザの考え方が変わっており、CDBとPDBを作成しました。 > SQLPLUS /NOLOG SQL> CONN SYS AS SYSDBA (上記のようにローカル接続するとCDBに接続される) SQL> ALTER SESSION SET CONTAINER=PDB1; // PDBへ移動 SQL> SHOW CON_NAME // 念のため現在接続中のPDBの名前確認 SQL> STARTUP; (これでマウント状態だったPDB1がOPENしてREAD WRITEになる) この状態でCREATE USER文を実行してPDB1上でユーザを作成。 ここからなんですが、PDBやCDBへのログイン方法はわかたのですが、PDB上で作成したユーザにはどのようにしてログインするのでしょうか? ログインしてテーブル作成をしたいです。また、テーブル作成のスクリプト文(.sql)があるのでそれを流したい場合は、コマンドプロンプトからどのように実行すればよいでしょうか? 基本的な質問で恐縮ですが、宜しくお願いします。

  • 複数の行を集約するSQLについて

    以下のテーブルのレコードをもとに A B C 1| あ | あ | 1 | 2| あ | い | 1 | 3| あ | う | 1 | 4| う | あ | 1 | 5| え | あ | 1 | 6| あ | あ | 2 | 7| あ | い | 2 | 8| あ | う | 2 | 9| う | あ | 2 | 以下のテーブルを作成したいと考えています。 A B C D E 1| あ | あ | 1 | あ | - | 2| あ | い | 1 | い | - | 3| あ | う | 1 | う | あ | 4| え | あ | 1 | - | え | 5| あ | あ | 2 | あ | - | 6| あ | い | 2 | い | - | 7| あ | う | 2 | う | あ | (1)カラムCを1つのグループとします。 (2)その中でカラムAの値が「あ」の場合は、カラムBの値をカラムDに設定する。 (3)カラムAの値が「あ」ではない場合は、カラムBの値をカラムEに設定する。 (4)カラムAの値とカラムBの値を入替えると同じ場合は(例では上の表の3と4、8と9のレコード)、 カラムAの値が「あ」でない方のレコード(4と9のレコード)のカラムBの値をカラムEに設定する。 (5)(4)で値を設定した方のレコードを削除する。 どのようなSQLを作成すればできるのでしょうか? SQLに詳しい方がいらっしゃれば、ご教授をお願います

  • Oracle10gからkeySQLで集計データ

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

    • ベストアンサー
    • psgrade
    • Oracle
    • 回答数1
  • Oracle 11g R2の監査ログのフォルダ

    よろしくお願いします。 【環境】 RHEL 5 Oracle 11g R2 【質問】 AUDIT_FILE_DESTパラメータ に /opt/oracle/app/diag/AUDIT を指定して ファイルとして出力しています。(必須監査も含めて)通常は正常に動作していますが、なぜか まれに以下のフォルダに監査ログが出力されてしまいます。 $ORACLE_BASE/admin/adump 出力されるログは今のところ以下の1種類の監査ログのみです。 ACTION:[7] 'CONNECT' DATABASE USER:[1] '/' PRIVILEGE:[6] 'SYSBA' CLIENT USER:[6] 'oracle' CLIENT TERMINAL][13] 'Not Available' 質問ですが、なぜこの監査ログのみ adump 以下の記録されるのでしょうか。

  • ORACLE 索引検索について

    ORACLE初心者で索引について勉強しています。 そこでORACLEの索引(Bツリー)検索について2点程質問させていただきます。 (1)索引を用いるとI/O処理が少なくなりアクセスが高速になるということはわかったのですが、そのI/O処理とはプロセスとメモリ間のやりとりに関するI/O処理という認識で間違いないのでしょうか? (2)索引付きと索引なしのカラムを抽出条件にして検索した場合、まず索引付きのカラムから検索を行い、そのROWIDを元に索引なしのカラムのデータを取得して対象データかどうかの判断を行うのでしょうか?

  • OracleSQL 組み合わせチェック

    いつもお世話になっております。 OracleSQL 組み合わせチェックについて、 どのようにしたらチェックができるのかお知恵をお貸しください。 ◆データテーブル 連番 データ ------------- 1    01 1    10 2    02 2    20 3    10 3    01 4    03 4    30 5    01 5    20 <やりたいこと> 連番は必ず2組みずつ入っていて、 データの組み合わせが(01,10)(02,20)(03,30)のどれかになっています。 ※組み合わせなので、(10,01)等の場合もあります。 正しくない組み合わせを抽出したいです。 結果としては、下記の出したいです。 連番 データ ------------- 5    01 5    20 どのようにSQLを組めばこのようなチェックができるでしょうか? よろしくお願いします。

  • 条件をつけてレコードを取得したい

    以下のようなA,Bテーブルから条件を指定してレコードを取得したい 【Aテーブル】 ID Bテーブル番号 0001      null 0002      null 0003      null 【Bテーブル】 シーケンス番号   ID    登録日 処理済みフラグ       0010  0001 2014/01/01        0       0011  0001 2014/01/02        1       0012  0001 2014/01/03        0 <結果> 【Aテーブル】 ID Bテーブル番号 0001     0001 0002     null 0003     null 条件としては以下の条件です。 (1)Aテーブルは全レコード出力する (2)BテーブルのAテーブルシーケンス番号が複数存在する場合、登録日が一番古いレコードを抽出する (3)Bテーブルの処理済みフラグが0のレコード以外はnullとする。 自分で抽出条件を作成したのですが、Aテーブルの0001分しか上手く抽出出来ませんでした。 SELECT * FROM Aテーブル AT (SELECT シーケンス番号, MIN(登録日) AS 登録日 FROM Bテーブル GROUP BY AテーブルID) BT1, (SELECT * FROM Bテーブル) BT2 WHERE AT.ID = BT1.ID AND BT1.登録日 = BT2.登録日 AND BT1.ID = BT2.ID AND BT2.処理済みフラグ = '0' 一度上の命令文でテーブルを作って元のテーブルとマッチングさせるしかないのでしょうか?出来れば一発で抜き出したいです。 ご教授宜しくお願いします。

  • OracleClientのインストールがおかしい?

    いつもお世話になっております。 WinXP(32bit)にOracleXE11gをインストールしました。 そして、Win7(64bit)にClientをインストールして使用しようと思ったのですが、 インストールがうまくいっていないような気がします。 11g32bit用のClientをダウンロードし、「C:\app\product\11.2.0\client_1」にインストールしたところ、 問題なく終了したのですが、「C:\app\product\11.2.0\client_1」配下に 「network」フォルダも「bit」フォルダもないのです。 とりあえず、「network\admin\tnsnames.ora」を自分で作成したところ、 SQL*PlusでDBに接続はできました。 oo4oを使用したいと考えていたのですが、それもなく・・・ このインストールは失敗しているのでしょうか? 原因がわかる方がいらっしゃいましたら、教えてください。 どうぞよろしくお願いします。

  • ORACLE ダウングレード

    現在 ORACLE Database 10G Enterprise Editions を使用しているのですが ORACLE Database 11G Standard Editions に変更しようと計画しています 実際に変更された方がありましたら問題点と解決策を教えていただけますでしょうか よろしくお願いします