uresiiwa の回答履歴
- 800万件のテーブル読み込みについて
oracle10G(10.2.0.1)をWin2003 SP2環境で使用しています。 あるテーブル(Aテーブル)のデータ量が800万件あり、そのテーブルを読み込むSQL(B.SQL)が4分程度かかっていました。 ある日、Aテーブルの項目名を変更することになりましたので、すべてのデータをCSV形式で保存し、テーブルをdropcreate後にsqlローダーにてインポートしたところ、B.SQLが15分かかるようになってしまいました。 B.SQLは、項目名を変えただけで、インデックスも削除する前と同じ状態にしてます。 どこから調査すればよいのでしょうか? よろしくお願いいたします。
- SELECT実行結果のレスポンス改善について
いつもお世話になっております。 Oracle9i+XP(CPU=PentiumCore2Duo,メモリ=2MB)の環境にて、以下のようなSELECT文なのですが、実行結果が出るまでに約45分もかかってしまいます。 何が悪いのか切り分けるために、以下の副問い合わせのみを切り取ってSQLPLUSで実行してみると15件ずつが約10秒おきに返ってくるという現象が確認できたため、おそらくこの副問い合わせではないかと思っております。 データ件数としては、ZAIテーブルが約6万件、MEISAIテーブルが約12万件、VIEW_ROOM_CALENDERビューが約6千件で、それ以外はしれとります。 一応すべてのテーブルのキーにはインデックスがはられているようです。 色々と調べてautotraceにて実行計画などを見てみましたが正直よくわかりませんでした。 テーブル構造やリレーション、カラム数、レコード長など情報が少なく大変申し訳ないのですが必要であれば提示させていただきますので、SQL文がおかしいとか、ネック部分の調べ方とか、なにかヒントのようなものでも結構ですので、どなたかご教授いただけませんでしょうか? 宜しくお願い致します。 select D.KANJYA_NO || ',' || D.NAME || ',' || A.BYOU_NAME || ',' || count(COL_PT) || ',' || count(COL_OT) || ',' || count(COL_ST) from ( -- 副問い合わせ select B.KANJYA_NO as KAN_NO, B.KAIKEI_DATE, G.BYOUTOU_NAME as BYOU_NAME, (case when C.MASTER_CODE in ('01017' , '01022' , '01025') then B.TOTAL_KAISUU else NULL end) as COL_PT, (case when C.MASTER_CODE in ('01019' , '01021' , '01023') then B.TOTAL_KAISUU else NULL end) as COL_OT, (case when C.MASTER_CODE in ('01016' , '01020' , '01024') then B.TOTAL_KAISUU else NULL end) as COL_ST from ZAI&1 B inner join MEISAI&1 C on C.NYUUGAI = B.NYUUGAI and C.KANJYA_NO = B.KANJYA_NO and C.ZAI_NO = B.ZAI_NO and C.KAIKEI_DATE = B.KAIKEI_DATE and B.KAIKEI_DATE Like '&1' || '%' and B.NYUUGAI = 2 and B.KANJYA_NO not like '*%' and C.MASTER_CODE in ('01017','01022','01025','01019','01021','01023','01016','01020','01024') inner join NYUUIN_ROOM E on C.KANJYA_NO = E.KANJYA_NO inner join VIEW_ROOM_CALENDER H on E.KANJYA_NO = H.KANJYA_NO and C.KAIKEI_DATE = H.YYYYMMDD and lpad(E.ROOM_NO,'10','0') = TO_NUMBER(H.ROOM_NO) inner join ROOM_TABLE F on E.ROOM_CODE = F.ROOM_CODE inner join BYT_TABLE G on G.BYOUTOU_CODE = F.BYOUTOU_CODE ) A inner join KANJYA D on A.KAN_NO = D.KANJYA_NO group by D.KANJYA_NO, D.NAME, D.BIRTH, A.BYOUTOU_NAME ;
- ベストアンサー
- Oracle
- ryozyryozy
- 回答数6
- SELECT実行結果のレスポンス改善について
いつもお世話になっております。 Oracle9i+XP(CPU=PentiumCore2Duo,メモリ=2MB)の環境にて、以下のようなSELECT文なのですが、実行結果が出るまでに約45分もかかってしまいます。 何が悪いのか切り分けるために、以下の副問い合わせのみを切り取ってSQLPLUSで実行してみると15件ずつが約10秒おきに返ってくるという現象が確認できたため、おそらくこの副問い合わせではないかと思っております。 データ件数としては、ZAIテーブルが約6万件、MEISAIテーブルが約12万件、VIEW_ROOM_CALENDERビューが約6千件で、それ以外はしれとります。 一応すべてのテーブルのキーにはインデックスがはられているようです。 色々と調べてautotraceにて実行計画などを見てみましたが正直よくわかりませんでした。 テーブル構造やリレーション、カラム数、レコード長など情報が少なく大変申し訳ないのですが必要であれば提示させていただきますので、SQL文がおかしいとか、ネック部分の調べ方とか、なにかヒントのようなものでも結構ですので、どなたかご教授いただけませんでしょうか? 宜しくお願い致します。 select D.KANJYA_NO || ',' || D.NAME || ',' || A.BYOU_NAME || ',' || count(COL_PT) || ',' || count(COL_OT) || ',' || count(COL_ST) from ( -- 副問い合わせ select B.KANJYA_NO as KAN_NO, B.KAIKEI_DATE, G.BYOUTOU_NAME as BYOU_NAME, (case when C.MASTER_CODE in ('01017' , '01022' , '01025') then B.TOTAL_KAISUU else NULL end) as COL_PT, (case when C.MASTER_CODE in ('01019' , '01021' , '01023') then B.TOTAL_KAISUU else NULL end) as COL_OT, (case when C.MASTER_CODE in ('01016' , '01020' , '01024') then B.TOTAL_KAISUU else NULL end) as COL_ST from ZAI&1 B inner join MEISAI&1 C on C.NYUUGAI = B.NYUUGAI and C.KANJYA_NO = B.KANJYA_NO and C.ZAI_NO = B.ZAI_NO and C.KAIKEI_DATE = B.KAIKEI_DATE and B.KAIKEI_DATE Like '&1' || '%' and B.NYUUGAI = 2 and B.KANJYA_NO not like '*%' and C.MASTER_CODE in ('01017','01022','01025','01019','01021','01023','01016','01020','01024') inner join NYUUIN_ROOM E on C.KANJYA_NO = E.KANJYA_NO inner join VIEW_ROOM_CALENDER H on E.KANJYA_NO = H.KANJYA_NO and C.KAIKEI_DATE = H.YYYYMMDD and lpad(E.ROOM_NO,'10','0') = TO_NUMBER(H.ROOM_NO) inner join ROOM_TABLE F on E.ROOM_CODE = F.ROOM_CODE inner join BYT_TABLE G on G.BYOUTOU_CODE = F.BYOUTOU_CODE ) A inner join KANJYA D on A.KAN_NO = D.KANJYA_NO group by D.KANJYA_NO, D.NAME, D.BIRTH, A.BYOUTOU_NAME ;
- ベストアンサー
- Oracle
- ryozyryozy
- 回答数6
- 教えてください!どうしてもあの料理が食べたいんです。
私には、中国に長くすんでた友達がいるんですが、その友達のお母さんが作る鶏肉の煮物がすごくおいしいんです! 鶏の手羽先を中華風に煮てあって、少しオレンジの風味がして、ホントにおいしいんです。 家でも食べたくてお母さんに作って!って頼んでも作ってくれません。 こうなったら、材料、レシピぜんぶ集めて頼むしかないと思いレシピを調べてるんですが、分かりません。 その友達に聞いてもいいんですけど、あんまりその友達と仲良くないんで・・・(^_^;) なんとなく聞きにくいんですヨ・・・ だれか教えてくれませんか?? お願いします!
- 教えてください!どうしてもあの料理が食べたいんです。
私には、中国に長くすんでた友達がいるんですが、その友達のお母さんが作る鶏肉の煮物がすごくおいしいんです! 鶏の手羽先を中華風に煮てあって、少しオレンジの風味がして、ホントにおいしいんです。 家でも食べたくてお母さんに作って!って頼んでも作ってくれません。 こうなったら、材料、レシピぜんぶ集めて頼むしかないと思いレシピを調べてるんですが、分かりません。 その友達に聞いてもいいんですけど、あんまりその友達と仲良くないんで・・・(^_^;) なんとなく聞きにくいんですヨ・・・ だれか教えてくれませんか?? お願いします!
- バックアップ機能について
いつも拝見させていただいております。 現在、Oracle10gのバックアップの精度について調査しています。 参考値としてOracleが持つバックアップ機能の実測値を知りたいと考えて いるのですが、サイト検索を行ってみても、なかなか見つかりません。 どなたか有益なサイトをご存知か実測値を持っておられる方がいらっしゃいましたら ご教授いただけないでしょうか? 下記バックアップ機能についての実測値が知りたいです。 また、それぞれの利点、欠点等ご存知でしたら合わせてご教授いただけると幸いです。 1.エクスポート・ユーティリティ 2.Oracle Data Pump 3.RecoveryManager 以上。よろしく御願い致します。
- ベストアンサー
- Oracle
- sh_yasuaki
- 回答数2
- 統計情報の取得=コミットですか?
いつもお世話になっております。 あるシステムの処理で 大量データ挿入⇒統計情報の取得⇒挿入したデータを基にファイル作成 という処理を行っております。 ファイル作成時に失敗した際に、ロールバック処理を行うように 設定しているのですが、既にデータが挿入されてしまっています。 初心者でいまいち統計情報の取得が良く分かっていないのですが、 統計情報を取得するSQL文を流した時点でトランザクションは コミットされるのでしょうか? よろしくお願い致します。
- ベストアンサー
- Oracle
- pepepepepe
- 回答数5
- データを削除しても表領域の使用率が減りません
いつもお世話になっております。 今使用している表領域の使用率が高くなってきたため、 不要なテーブルやデータを削除しました。 ですが、少ししか使用率が減らず困っています。 テーブルを削除した際にはPURGE RECYCLEBINで、BIN~のテーブルも 消しています。 何か他に原因があるのでしょうか?
- ベストアンサー
- Oracle
- pepepepepe
- 回答数3
- 女性の容姿について(男性の方に質問です)
私は30代前半のブスな女です。 外に出れば必ず笑われたり、小声で「ブス」とか「気持ち悪い」と言われます。 言われるのが嫌で、何年か前に目の整形手術をしたのですが、止まるどころか余計にブスと言われるようになりました。 私は見た目、痩せ型の色白、童顔。目は小さくはないですが、目つきはあまり良くありません。 男性の皆さん、どうしたらブスと言われなくなりますか? どういった時、どのような顔をブスだと思われますか? それと、男性が思う可愛い・綺麗な女性はどんな容姿ですか? かなり深刻に悩んでいます。どうぞ宜しくお願い致します。
- ベストアンサー
- その他(恋愛・人生相談)
- sohi
- 回答数11
- 女性はなぜどんどん大人っぽく美しくなっていくのか・・・コンプレックス・・・
20代後半男性です。 読んだ感想やアドバイスを下さい。 久々に大学の卒業アルバムを見ました。 やはり・・・ 男性に比べてはるかに女性は人をひきつけるものがあり、 大学一年生の頃に比べると、”変身した”というぐらいの 美しさをみにまとっている。。。 それに比べて男性は、全員がそうとはいえないが 女性の美しさに負けないほどの何かを持っているようには 見えず・・・。 女性の成長速度に比べて男性の成長速度は遅いのではないかと。。。 おんなじ年齢なら、女性は美しさを自信の糧として、はるか彼方に いて同年代の男を見下ろしているように思えます。 なぜ女性はどんどん美しくなるのでしょうか。。。 男性はそれにつりあうほどの何かを持っているといえるのでしょうか・・・? コンプレックスの一つだとは思うのですが。。。 なんか自分に自信をなくしてしまいます。 美しさも経済力も持っている女性に特定の男性のパートナーなど必要なんかないんではないかと。。。 私は今4歳年上の女性や10歳年上の女性などにあこがれていますが。。。とてもつりあうものはないし、そもそも頼りにならない男性や女性に屈折したコンプレックスを持っている男性など必要ないよなあとさらに自己嫌悪。 皆さんは美しくなる女性をどのようにうけとめているのでしょうか? 美しさは内面の美しさもあらわしているようで。。。 余談で、年上の女性をひきつける方法なども教えていただければと思います。 宜しくお願いします。
- 体育が嫌でたまりません、苦しいです
私は昔、体育は「嫌い」というわけではなかったのですが 今まで体育の授業の中で傷ついたことがたくさんあり、それがトラウマとなって 今では本当に大っ嫌いです。「体育」という文字を見るだけでもう嫌です。 バレーやバスケと聞くとゾッとします。 最近では「嫌い」より「怖い」です。 体育の授業がはじまって体育館に行くと口の中が苦くなり、立ち眩みがしてお腹がすごく痛くなります。 大げさかもしれませんが、体育館に行く度にこういうことになります・・・ でも逃げちゃダメだ、すぐ終わるといつも思っているんですが、本当は体育館にも入りたくありません。 そんなこととは裏腹に「何考えすぎてんの?」と心のどこかで思っている自分がいます。 私はどちらかと言うと運動は苦手なほうで、バレーなどのチーム分けで 一緒になった子に「ね、マジで○○(私の名前)と一緒?じゃあこのチームどうするの?」と言われたことがあります。 今でも、チーム分けで私と一緒のチームになった子に対して、心の中で 「ごめんね、私なんかいて・・・足手まといなだけだよね」と思ってしまいます。 他にも私と同じチームになった子から嫌がられてないか?とか色々考えてしまいます。 バレーは昔は好きだったのですが、今では最悪です・・・ボールに触るだけで「もうダメだ」と思ってしまいます。 体育が好きな子はなぜ好きなのか、私にはわかりません。 私はいじめとか、そういうわけではないんですが 来週も体育があると思うと本当に辛いです。 このこと(体育)のことだけは誰にも相談できずにいました。 でもこのままじゃ自分はダメだと思っています。どうしたら体育を克服できるのでしょうか。 気持ちの持ち様でしょうか?
- ベストアンサー
- その他(恋愛・人生相談)
- roze1670
- 回答数12
- SQLについての質問
9iです。お世話になります。 次のSQLをどう書けばよいのか分かりませんのでご教示願います。 【テーブルA】 id code 1 1 2 2 3 (null) … 【マスタテーブルB】 code name 1 あ 2 い 【ほしい結果】 id name 1 あ 2 い 3 (null) … 要するにcodeがnullの所はnameをnullにして、nullでないところは、マスタから引っ張ってくるということがやりたいです。 宜しくお願いします。
- SQLのIN句について
DB:Oracle9i SQLのIN句のカッコ内は、何個まで書けるなど、制限はあるのでしょうか? PRO_KEY = IN (no1, no2, no3・・・)など、カッコ内が可変で、数百個、もしくは数千個ある場合、IN句を使用しデータを一度に取得するのではなく、PRO_KEY = no1のSELECT処理を発行、PRO_KEY = no2のSELECT処理を発行・・・し、ARRAYに検索結果を1つずつ詰めていく方が良いのでしょうか? 初心者で恐縮ですが、どなたかご教授ください。
- 捨て台詞は「実家が資産家」
別れを切り出し、散々、話し合ったあと、 捨て台詞のように、 「実は2年後に俺に遺産が8千万円入る予定なんだよな。」 とか、 「今まで言わなかったけど、俺の親父は大手レストラングループの 社長で、実家には4台の外車がある。」 とか、言い出す人が居るんですが、これって、いったい なんなんでしょうか? 最後の最後で、お金持ちである事をアピールして なんになるのでしょう? しかも、見え見えのウソです。 私は、とくにお金持ちが好きってわけでも ないのですが。
- ベストアンサー
- 恋愛相談
- noname#54566
- 回答数9
- データベースの作成
Oracleを勉強し始めました。 今まではWebアプリにAccessを使っていて、Oracleに移行したいと思います。 とりあえず、データベースを作成するのだと思ったのですが、 インストールを終えた状態で、orclというデータベースがすでに出来ていました。(インストールは、マシンを設置した部署の方がしました。) 今後は他の部署もこのOracleにデータを保存するという予定らしいです。Oracleのインストールしたサーバーには、リモート接続が可能で、 管理者権限のパスワードも教えてもらっています。 もし、私がアクセスの住所録というデータベースファイル(jyuushoroku.mdb)を移行したいとすると、jyuushoroku というデータベースを新たに作成するのですよね? データベースは複数にあっても構わないのですか?アクセスと違い、データベースを作成する時にとても大掛かりなのでとまどってしまいました。 インストール時に作成したorclというデータベースには、パスワードが 設定されていて、接続ができません。自分の作成したデータベースには、独自のパスワードを設定して、それを使って接続すればいいのですか?ほんとに初歩的な概念がわからずに申し訳ないです。 よろしくお願いします。
- コマンド:全データを表示させる or SqlDeveloperの入手先
SQL*Plusから、スキーマー・データベースの一覧やテーブル一覧など全ての情報を表示させる方法が知りたいです。 MySQLでいうところの、show databasesのようなコマンドです。 あと、Oracle Sql Developerの日本語バージョンのダウンロードサイトが知りたいです。 無ければ英語版でも構いません。 というより無料で手に入るのでしょうか?
- 処理時間について
今、仕事で既存の処理のレスポンス調査をしているのですが、 行き詰ってしまったので質問させていただきます。 本番環境とテスト環境で全く同じ処理を実行した所、テスト環境では 1分程度で処理が正常終了するのに本番環境だと 2時間経過しても処理が終わらず、なぜ同じ処理なのに本番環境と テスト環境で処理時間に違いがありすぎるのか分からず困っています。 処理としては25万件程あるデータ(テキストベース)を PL/SQLで読み込みTable_AにInsert または キーが同じデータが 存在しているならUpdateをし、 それと同時にトリガーで更新前と更新後の値を Log_TableにInsertします。 検証したときの手順としては、 (1)Table_AとLog_TableをCreate (2)トリガーのコンパイル (3)Table_Aのインデックスの作成 (4)PL/SQLのコンパイル (5)Table_AとLog_Tableの統計情報の取得 となっております。 ちなみに、テスト環境と本番環境の両方について、 実行されたSQLの実行計画を取得し比較したのですが、 同じ実行計画になっていました。 また、統計情報を取らずに処理を実行した場合は、テスト環境でも 2時間経過しても処理が終わりませんでした。
- Oracle 実行計画、統計情報の見方
実行計画や統計情報を取得した結果の 簡単な見方があればサイトなど教えてください。 実行計画を取得して どんなSCANやINDEXの利用されているかがわかっても、 何SCANなら速いとかがわからないので、 結局、何を採用すればいいかわかりません。 統計情報でもconsistent getsが ブロックに対する読み込み一貫性が要求された回数とわかっていても、 その値が少なければいいのか、 どの値を優先的に見ればいいのかがわかりません。 情報の取得は出来ても分析の仕方がわからない状態です。 簡単にわかる方法があれば教えてください。
- あいまい検索のパフォーマンス向上について
あいまい検索(部分一致)検索をする際に、あいまい検索だとインデックスも効かないので、インデックスを張ってパフォーマンス向上という訳にもいかず、パフォーマンスが非常に悪くて困っています。 状況としては、WEBアプリケーションで、検索画面から検索条件を入力し、「Find」ボタンを押下するとJavaでSQLを発行し、Oracleへ接続するという仕組みのシステムです。 下記のようなケースで、後者のSQLに変更するとガツンとパフォーマンスが向上したのですが、偶然でしょうか? 【もともとのSQL】 select name ,age ,sex ,blood_type ,address from TABLE1 where age >= 20 and age < 30 and blood_type = 'A' and name like '%山%' and address like '%中央区%' / 【パフォーマンスが向上したSQL】 select * from (select name ,age ,sex ,blood_type ,address from TABLE1 where age >= 20 and age < 30 and blood_type = 'A' ) where name like '%山%' and address like '%中央区%' / というふうに、あいまい検索部分を別出ししました。 WHERE句の条件をANDでたくさんつなげる際に、2度の問い合わせにはなりますが、一度あいまい検索以外の条件で絞り込んで、それから再度その結果に対してあいまい検索を実施した方が早いのではないかと思ってやったところ実際に早くなったのですが、これは偶然でしょうか? 件数が増えると逆に遅くなるとかだと、逆効果なので、理論的にはどうなのか、ご存知の方がいらっしゃったら教えてください。 また、実際にはテーブルではなく、VIEWに対しての検索で実施しました。 よろしくお願い致します。
- viewの状態について
こんにちは。 viewについての質問です。 環境構築について、table、view等を作成しています。 その際、viewを作成する際に、viewを呼んで作成されるパターンがあります。※呼ばれるviewはまだ作成されていない時です。 この時もちろんエラーになるのですが、このviewをリコンパルする時に、ソースを再実行以外に何か良いコマンド等ないでしょうか? ex)リコンパイル view名 みたいな感じです。 また、viewが正常に作成されているかどうかがわかるコマンド等ご存知でしたら教えて頂けないでしょうか? 宜しくお願い致します。