回答数
気になる
-
SQLについて
お世話になります。 まず実現したいことを書きます。 DBテーブル内容 受注テーブル 受注番号 案件番号 得意先コード 1 1 0001 2 1 0001 3 1 0001 4 2 0002 5 2 0002 6 3 0003 7 4 0001 8 5 0003 のようにデータが入っている時に 受注番号 案件番号 得意先コード 1 1 0001 2 1 null 3 1 null 4 2 0002 5 2 null 6 3 0003 7 4 0001 8 5 0003 このように取得したいのですが、 (案件番号と得意先コードが一致している時は一番上に だけ得意先コードを表示それ以外はnullをセットする) いろいろ考えたのですが、まったくわかりませんでした。 どなたかアドバイスをお願いします。 よろしくお願いします。
質問日時: 2004/06/23 14:01 質問者: antonio123da
ベストアンサー
5
0
-
動的SQL
いつもお世話になってます。 ストアドで、動的SQLを行いたいのですが、イマイチ分かりません。 テーブルT1(文字列)から、項目K1(べた書き)の最大値、最小値を抽出し、変数A,Bに格納したいのですが、どうすればいいのでしょうか?? なお、テーブルT1がDBに存在することはチェック済みです。 よろしくお願いします。
質問日時: 2004/11/16 17:03 質問者: hiro_sun
ベストアンサー
5
0
-
SQL 全角半角混在の文字列から半角数字のみを抜き出す
以下のようなことを「SQL文のみ」で行いたいのですが、 どなたかご教授のほどお願い致します。 下記のような変換前の文字列があるとします。 それを変換後のような形式にしたいのですが可能でしょうか? ■変換前 →2721111千葉県浦安市3-3-3浦安マンション222 ■変換後 →2721111333222 要するに数字だけを抜き出したいのですが できますでしょうか。 REGEXPのような正規表現は使用できないようです、 oracle9iです。 恐れ入りますが、よろしくお願いします。
質問日時: 2005/03/09 17:16 質問者: yukio200263
ベストアンサー
5
0
-
主キー以外の項目にNotNull制約をつける理由について
あるプロジェクトで OracleにアクセスするJavaのプログラムを書いています。 使用しているテーブル定義は、 主キーでも何でもない項目ほぼ全てにNotNull制約が付いています。 別にNotNull制約を除けば主キー以外の制約は何もありません。 これからつく予定もありません。 そこでふと、 各項目の入力値は全てプログラム側でチェックしていますので プライマリキーや共通のフッタ部分(登録日、登録ProgramIDなど)を除けば Not Null制約は全くいらないんじゃないかと思いました。 このような場合、NotNull制約は何の為についているんでしょうか?
質問日時: 2006/01/28 20:03 質問者: jack_s
ベストアンサー
5
0
-
SQL副問い合わせ内のエイリアス
DEPARTMENTとEMPLOYEESのテーブルがあり、そこから社員のいない部署を取得しようとしているのですが、わたしの書いたSQLがうまく動きません。作動しない理由をご教授くだされば助かります。オラクル8.1.7.4.1で動作させなければならず、left outer joinが使えないところからの質問です。 データはこういう構造です(*がプライマリーキィを表す)。 DEPARTMENT: *DEPT__T, DEPT_NAME, .... EMPLOYEES: *EMPLOYEES__T, DEPT_NAME, ... これに対して、 select dept__t, (select count(*) from employee where department.dept__t = employees.dept__t) counter from department where counter = 0 というSQLで社員のいない部署を取ろうとしたのですが、ORA-00904: "COUNTER": invalid identifier.が返されてしまいます。 WHERE文にcounterというエイリアスではなくカラムそのものを書くと問合せが正常に作動するのですが、なぜでしょうか。オラクルのバージョンが古いことが原因でしょうか。
質問日時: 2006/04/11 11:30 質問者: sharat2005
解決済
5
0
-
Oracleの初歩の勉強の方法について教えてください。
はじめまして。 私は、小規模の会社に勤めてまして、データベースの必要なことから独学で、accessを勉強し、必要最低限の知識(多少のマクロやVBA)を本やネットから得ました。 ある程度のものしかできませんが、頼まれごとでちょこちょこつくっております。 そこで更にデータベースの知識を得たいと思い、いろいろな人と話してますと、オラクルってのがあるよ、と聞きました。ただ具体的なことは聞いた人たちもわからず、私も言葉しか聞いたことがありません。 そこで質問ですが、とっかかりがまるでわかりません。 オラクルについての勉強をどうしてけばいいのか、お教えいただきたいと思います。 宜しくお願いします。
質問日時: 2006/07/23 15:57 質問者: PAXSON
ベストアンサー
5
0
-
あいまい検索のパフォーマンス向上について
あいまい検索(部分一致)検索をする際に、あいまい検索だとインデックスも効かないので、インデックスを張ってパフォーマンス向上という訳にもいかず、パフォーマンスが非常に悪くて困っています。 状況としては、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に対しての検索で実施しました。 よろしくお願い致します。
質問日時: 2007/12/13 01:54 質問者: t29x0479
解決済
5
0
-
800万件のテーブル読み込みについて
oracle10G(10.2.0.1)をWin2003 SP2環境で使用しています。 あるテーブル(Aテーブル)のデータ量が800万件あり、そのテーブルを読み込むSQL(B.SQL)が4分程度かかっていました。 ある日、Aテーブルの項目名を変更することになりましたので、すべてのデータをCSV形式で保存し、テーブルをdropcreate後にsqlローダーにてインポートしたところ、B.SQLが15分かかるようになってしまいました。 B.SQLは、項目名を変えただけで、インデックスも削除する前と同じ状態にしてます。 どこから調査すればよいのでしょうか? よろしくお願いいたします。
質問日時: 2009/01/14 12:43 質問者: teatea
ベストアンサー
5
0
-
Oracleの種類、購入について
これからOracleを勉強しようと思っています。その際に家のサーバー(Windows)にインストールしようと考えているのですが、いろいろ種類がありすぎて何が適しているかよくわかりません。 希望としては2万くらいで購入して、小中規模のデータベースを構築して、OralceMaster(Gold)ぐらいまで取得できればと思っています。Distributionとかいろいろあるみたいですが、何がよろしいでしょうか? ご存知の方ご教授お願いします。
質問日時: 2006/04/12 23:58 質問者: gerychan
ベストアンサー
5
0
-
PL/SQLのアドバイスをお願いします。
主にオラクルのデータをAccess2000からレポートして使っています。 〒コードが、数字データで保存してあります。 例)3430123 今はクライアントPC側のAccessで 例) 343-0123 と計算させて利用しています。 こういった計算はオラクル側でPL/SQLなどを利用したほうが効率はいいでしょうか? それとも毎回計算させるのであれば、クライアント側かサーバ側で計算速度に違いはありませんでしょうか? ※実際にはオラクルの〒コードのフィールドが数値になってしまっているので、 コードが5~7桁とデータがまちまちになってしまっています。 例)北海道 0013304 → 13304 (とオラクルで保存) データを利用するとき、5桁と判断して001-3304 と計算させています。 00で始まる番号、0で始まる番号、0以外で始まる番号の3種類データがあります。 まだ、PL/SQLを利用したことがないのですがこれから活用しようと考えています。
質問日時: 2004/10/04 16:14 質問者: taaaaaaa
ベストアンサー
5
0
-
SQL*Plusから接続出来ません
使用OS:Windows2000Server Oracle9i Clientをあるパソコンにインストールを行い、SQL*Plusを起動してユーザ名、パスワード、ホスト文字列を入力しOKボタンをクリックしても、接続することが出来ません。 ちなみに、Oracle Enterprise Managerからは接続出来ます。何故このようなことが起こるのでしょうか?以上、宜しくお願い致します。
質問日時: 2004/11/18 14:00 質問者: kasato
ベストアンサー
5
0
-
PL/SQLでmdb(Access)ファイルへの書き込みは可能?
あまりPL/SQLに関して知識がないので 可能なのかを教えていただきたいのですが、 例えば、 Oracleのテーブルデータ(例:メッセージテーブル) をローカルの空のMDBファイルへ丸ごとコピー といった処理をVBで行っているのですが、 毎回Insertを発行しているために とても処理に時間がかかっています。 (もともとこれ自体無謀なんですが・・・) そこでPL/SQLではバルク処理?といった 高速処理もあるようで、 このVBのかわりにPL/SQLで出来ないものだろうか・・・ と単純に思ったのですが、 PL/SQLでこういったコピー処理っていうのは 可能なんでしょうか?? ご存知の方、教えていただきたいです。 よろしくおねがいします。
質問日時: 2005/11/01 21:13 質問者: kei161220
ベストアンサー
5
0
-
ORA-06502のエラー
以下のPL/SQLを実行すると、ORA-06502:数値または値のエラーとでます。途中までは、INSERTできるのですが、IF文の180個目くらいでエラーになります。そのあたりをCur1の宣言時にWhereで指定するとうまくいきます。 DECLARE CURSOR Cur1 IS SELECT MOJI FROM A_TBL ; CNT NUMBER(10); KAKKO_FL NUMBER(1); BEGIN CNT := 0; KAKKO_FL :=0; FOR Cur_Rec1 IN Cur1 LOOP FOR S IN 1 .. LENGTH(Cur_Rec1.MOJI) LOOP IF(ASCII(SUBSTR(Cur_Rec1.MOJI,S,1)) = 33129) THEN /*33129は'('*/ EXECUTE IMMEDIATE ' INSERT INTO EDD.test1116 VALUES( ''' || Cur_Rec1.MOJI || ''' ) '; END IF; END LOOP; END LOOP; END; なにがなんだか、さっぱりわからないので、どうか、ご教授ください。
質問日時: 2005/11/17 12:03 質問者: pyontanrie
ベストアンサー
5
0
-
Where句のNot条件をAnd条件にしたい!
現在where句でNot(A is not null and B is not null)という条件をしているSQLがあるのですが、この表現をNot句を使わずに表現するとなるとどのように表現したら良いのでしょうか? SQL以前の問題だと思うのですが、上手く表現できずに件数が合わずに困っています。どなたか助言お願い致します。
質問日時: 2007/03/26 18:27 質問者: noa104
ベストアンサー
5
0
-
ora-01033 oracle intialization or shutdown in process
ユーザーがPCをガンガン落としたようです。 Oracle10.0にて ログオンにて、1033 Initialization or shutdown in process が出ます。ずっとです。 select * from V$Backup では、すべて NOT ACTIVE でした。 recover dabtabase を行ったところ ORA-00283:エラーによってリカバリセッションは取り消されました。 ORA-12801:パラレル問合せサーバーP000にえらーシグナルが発生しました。 ORA-00600:internal error cose,aurguments:[3020],[27669],[126105],[],[],[],[] ORA-10567:Redo is inconsistent with data block(file# 3, block# 27669) ORA-10564: tablespace SYSAUX ORA-0110:data file3:'C:\ORACLE\PRODUCT\10.1.0ORADATA\xxxx\SYSAUX01.DBF' ORA-10561:block type ' TRANSACTION MANAGED INDEX BLOCK', と出ます。 ここから先、どうしたら良いのでしょうか? プログラマでORACLEは初心者です。 バックアップは取ってありません、 何としてでも起動させてユーザーDBをOpen出来ないといけないのです。 今日中しか時間がありません。どなたかお知恵をお願いします。
質問日時: 2008/12/23 12:37 質問者: shibajunko
解決済
5
0
-
テーブルのCreate文
お世話になります。 現在、52テーブルあるDBがあり、別のDBに同じテーブルを作成するため、 それらのテーブルのCreate文を作らなくてはなりません。 一つ一つ属性を調べて作成するのではなく、一度に作る方法がありましたら、教えて下さい。 時間がないため、「直ぐに回答ほしいです」にチェックを 入れさせていただきました。 よろしくお願い致します。
質問日時: 2005/06/22 13:59 質問者: kosumosu82
ベストアンサー
5
0
-
カンマがデータとして入ってるCSVについて
上記CSVをOracleにロードしたいのですが、 いい方法はありますでしょうか? 現行では単純にSQLローダーを使用している為、 エラーで落ちています。 アドバイスお願いします。
質問日時: 2005/10/25 10:52 質問者: toshi_200578
ベストアンサー
5
0
-
DBバックアップ方式検討
入社3ヶ月のペーペーです。先週初めてOracleに触れました。今週なぜかDBバックアップの方式検討なぞを任されております。 前提条件として ・完全回復。 ・取得タイミングは日次および週次 ・取得可能な時間帯は日次で夜20:00~翌朝08:00の間、週次で土曜08:00~日曜24:00 ・全面障害、部分テーブル障害の双方に対応可能であること ・リカバリ時間は傷害検知から1時間以内 …を出されています。これに対し、 ・アーカイブログモードで運用 ・週次でコールドバックアップ取得 ・日次でホットバックアップ取得 →日次でDB停止時間は30分しか取れないので コールドは無理だろう →完全回復を求めるならば論理バックアップは 使えないだろう 思っているのですが、方式検討の際にこのほか勘案しなければならないのはどのような事でしょうか?また増分バックアップや差分バックアップを日次で取得するというのは、普通にホットバックアップを取得するのとどのように違いが出てくるのでしょうか?
質問日時: 2006/07/24 15:50 質問者: since1983
ベストアンサー
5
1
-
UNDO_RETENTION初期化パラメータについて
ORACLE9iを自動UNDO管理モードで使用しています。 マニュアルによるとUNDO_RETENTIONはコミット後のデータの保存期間(目標値)を設定するもので、用途はフラッシュバック問い合わせ、読み取り一貫性の保障であるということですが。 質問:クエリー(SELECT)を投げた時点の対象テーブルの状態(スナップショット)もUNDO表領域に置かれ、UNDO_RETENTIONの期間保存されるのでしょうか? そうすると「UNDO_RETENTIONはコミット後のデータの保存期間」というのとは少し違ってくるのかと思うのですが。。。 経緯:1時間ほど掛かる問い合わせで発生するORA-01555(スナップショットが古すぎます)のエラー対策の検討をしていところです。 よろしくお願いします。
質問日時: 2008/04/26 11:30 質問者: kames
ベストアンサー
5
0
-
SQL 前日分と相違があればアラート その2
いつもお世話になっております。 以前下記についてお伺いいたしました。 今回はその続編です。 http://oshiete.goo.ne.jp/qa/7772587.html 何卒ご教授ください。 よろしくお願いいたします。 例えば下記のようなテーブルがあるとします。 【運賃テーブル】 日付 出発 到着 運賃 10月1日 東京 青森 8000円 10月1日 東京 大阪 5000円 10月1日 東京 福岡 8000円 10月1日 青森 大阪 6000円 10月1日 青森 福岡 9500円 10月1日 大阪 福岡 5000円 10月1日 大阪 青森 9800円 10月2日 東京 青森 null 10月2日 東京 大阪 5000円 10月2日 東京 福岡 8500円 10月2日 青森 大阪 6000円 10月2日 青森 福岡 9500円 10月2日 大阪 福岡 null 10月2日 大阪 青森 9000円 10月3日 東京 青森 8000円 10月3日 東京 大阪 5000円 10月2日 東京 福岡 8500円 10月2日 青森 大阪 6000円 10月2日 青森 福岡 9500円 10月2日 大阪 福岡 5500円 10月2日 大阪 青森 9000円 仮に運賃を日付で比較した場合(上記を水平展開した場合) 下記のようになります。 【運賃比較】 10月1日 10月2日 10月3日 東京 青森 8000円 ------ 8000円 東京 大阪 5000円 5000円 5000円 東京 福岡 8000円 8500円 8500円 青森 大阪 6000円 6000円 6000円 青森 福岡 9500円 9500円 9500円 大阪 福岡 5000円 ------ 5500円 大阪 青森 9800円 9000円 9000円 ここからが前回と違うのですが 上記の場合、nullがあったら、さらにその前日と 比較する方法を教えていただきたいのです。 ※ 最悪、比較データがない場合、過去1週間前 までさかのぼる必要がでることもありえます。 つまり上記でいえば 10月3日の料金は前日値と比べ… 【運賃変更】 東京 青森 変更なし 東京 大阪 変更なし 東京 福岡 変更なし 青森 大阪 変更なし 青森 福岡 変更なし 大阪 福岡 変更あり 大阪 青森 変更なし もしくは 大阪 福岡 変更あり の様に、「大阪 福岡」に変更があったことを アラート表示させたいのです。 【その他条件】 ・このSQLコードは毎日回します ・前日にもデータがなく、前々日のデータと 比較しなくてはならないこともあります。 もしくは過去1週間ほどさかのぼらないと 比較対象のデータがないこともあります。 ・case文を使って【運賃比較】の様なテーブルを作り ローカルでVBA等で比較させることも考えましたが データが大量すぎて、その方法は使えませんでした。 ・【運賃テーブル】の様な状態でデータをexportし それをローカルのExcelでピボットをかけるという方法も 同様な理由で不可能でした。 何卒よろしくお願いいたします。
質問日時: 2012/11/17 13:30 質問者: ice1982
ベストアンサー
5
0
-
インポートコマンドが認識されません
環境は、windows2000プラットフォームに、oracle9iです。 上記環境に、初期データベースを作成し、エクスポートされたダンプファイル(もらいもの)をインポートしようとしたんですが以下メッセージが出力され、ダンプファイルの取り込みができません。 インポートの方法は、以下です。 imp system/xxxxx@SID file=xxx.dmp fromuser=xxx touser=xxx 尚、toに指定しているユーザも作成してあります。 付与した権限は、connect、resourceです。 あと、インポートコマンド発行時に出力されるメッセージは次のようなものです。 SP2-0734: "imp system..."が開始するコマンドが不明です -残りの行は無視されました。 と出力されます。 上記メッセージから、impコマンドが認識されていないようにおもわれるのですが、ちょっと調べては見たのですが分からなかったので、ご教授ねがいます。
質問日時: 2005/07/12 11:36 質問者: ancya
ベストアンサー
5
0
-
DECODEの件
こんにちわ。 いまORACLE9iを使用している者です。 SELECT句で"DECODE"を使って, ある項目の値がAとBの間にあるかどうか,という条件で 取得する値を切り替えたいと思い, 下記のようなSQLを書きましたが, エラーになってしまいます。 SELECT DECODE(項目名,BETWEEN A AND B, '2', '1') FROM テーブル名; PLSQLを使用しないで, このようなケースを実現したいのですが, どうすればよいでしょうか? 教えてください。 よろしくお願いします。
質問日時: 2006/12/22 13:29 質問者: tatsurou
ベストアンサー
5
0
-
秋葉原でWindowsを買ったのですが.....(´・ω・`)
題名の通り、秋葉の某中古PCショップでWindowsXP Professional SP3英語版を購入したのですが(´・ω・`) パックに「For Refurbished PCs」と書いてありました(´・ω・) これは一体何なのでしょうか...通常パッケージ版と同様に、インストール/ライセンス認証&使用できるのでしょうか...? それともこれは特殊なWindowsなんですか?それとも海賊版ですか?海賊版/通常使用不能だとしたらどうすればいいですか もう一つ質問なのですが。 あとこのライセンスで、別のPCに再度インストールすることはできますか?(同時に2台のハードにインストールという意味ではないです。) 分かる方解説お願いします(*- -)(*_ _)ペコリ
質問日時: 2018/10/13 20:39 質問者: OSを自作したい中学生
解決済
5
0
-
トランザクションログを出力せずにデータを削除する方法
大量(30万件程)のデータを削除したいのですが、ロールバックする必要がないのでトランザクションログを出力したくありません。一部のデータは残す必要があるので、トランケートはできないのですが、なにか良い方法はご教授ください。
質問日時: 2005/04/21 11:05 質問者: constantine
ベストアンサー
5
0
-
OracleMaster取得のメリット
来年の春就職の内定をもらった企業からOracleMasterSilverを 入社までに取っておくように言われました。専門学校で初心者向けの 本1冊を勉強したのでデータベースの資格である。国際的に認められている という2点は理解していますがそれだけです。 しかし、ちょっと調べてみるとこの資格(Silver以上)は報奨金を もらえたり、資格手当がつく会社がある事を知りびっくりしました。 残念ながら内定先は手当や報奨金はありませんでしたが(泣) そこで質問なのですが、 1)あなたは報奨金、資格手当はいくらぐらいもらえていますか? 2)報奨金を出してまでする会社としてのメリットは? 3)仕事上でこの資格を持っててよかったと思ったシーンはありますか? 4)データベースの資格というのは分かるけど具体的にどんな仕事で有効ですか? について回答を頂ければと思います。よろしくお願いします。
質問日時: 2005/11/02 21:18 質問者: elrond
ベストアンサー
5
0
-
【SELECT文】左の3桁内が数値か否か判断する方法を教えてください。
初めて投稿させて頂きます。よろしくお願いします。 表題の件ですが あるAテーブルの項目の属性がCHAR型で左から3文字内で数値のみの場合と英字が含まれている場合とで判断をしたいのですが。 成功イメージ例 Aテーブル --------------------- TEST(フィールド) 1234567 12A4567 BN34567 左から3桁内数値だけ選択 結果>>>>'1234567'のレコード1件を抽出 ------>SELECTで左3桁内数値のものだけ抽出したいのですが。 SUBSTR(TEST,1,3)で左の3文字を切り離したのですが、行き詰ってしまいました。 わかりづらい説明で申し訳ございませんが、よろしくお願いいたします。
質問日時: 2006/03/19 23:17 質問者: questionmn
ベストアンサー
5
0
-
Oracleとは?
私はエクセルなどは使えますがコンピュ-タ-言語などはほとんどわからないものです Oracleという言葉がわかりません 「リレーショナルデータベース管理システム」ということですが、ぴんときません そこで質問をまとめてみました 1、「Oracle」とは「Oracle Database」と同じものでしょうか? 2、「Oracle Database」とはソフト名でしょうか?それとも言語名なのでしょうか? 3、「Oracle Database」を使った有名な商品があれば教えてください ご存知の方よろしくお願いいたします
質問日時: 2006/08/10 14:06 質問者: hiroki-73
ベストアンサー
5
1
-
バッチ更新のレスポンスが悪い原因について
いつもお世話になっております。 10gの2003Serverの環境ですが、ある業務パッケージで用意されているインターフェースにて、COBOLソースで25万件程のテーブルをリードして物理ワークファイルにライトし、更にそのファイルより別のオラクルテーブルにライトを行っているのですが、リードで約2時間、ライトに約5時間もかかってしまいます。試しに一人ずつ(350人×700件=約25万)画面にディスプレイしてみると最初の30分で80人分程処理しておりますが途中から急激に遅くなり一人につき5分以上かかってきます。 当然ながらCOBOLの読み書きするロジックに原因があると思っておりソースを追いかけておりますが、不思議なことに他ユーザーの9iの環境で同アプリを実行するとものの15分程で読み書きが終わってしまいます。データの内容は異なるでしょうが件数的にはほとんど変わりません。 従って、平行してオラクル側でも調査したいのですが、具体的に何をどうすればよいのか、情報が少なくて申し訳ないですが、何かヒントでもいただけないでしょうか? 何卒よろしくお願いします。
質問日時: 2009/01/21 14:53 質問者: ryozyryozy
ベストアンサー
5
0
-
プラチナと給料
オラクルマスタープラチナを取ったら給料がどれぐらいプラスになりますか? どの資格と一緒にとったらより効果的になりますか? これからのIT業界に仕事を従事する場合にまだ重要視される資格と言えますか?
質問日時: 2009/02/11 22:50 質問者: mmrhan
ベストアンサー
5
0
-
Oracle(オラクル)で、日付時刻型の検索方法について
質問させていただきます。 データベースはオラクルを使っていて、 SQL文で、抽出するときにエラーが出て困っています。 日付時刻型が「2005/05/26 19:13:00」という感じで入ってます。 2005/05/26 を抽出したいのですが、 BETWEEN '2005/05/26 00:00:00' AND '2005/05/26 23:59:59' だと、エラーでできません。 どなた様か、ご教授よろしくお願いしますm(_ _)m
質問日時: 2005/05/26 19:19 質問者: KOHEI_JAPAN
ベストアンサー
5
0
-
updateについて(SQL)
こんばんわ。現在、oracle8i,SQLを勉強中で基本的な事はできるようになったのですが、わからない所が出てきたのでよろしくお願いします。 売上票 年月日 当日売上 前日売上 ------------------------ 2000/04/11 100 2000/04/10 150 2000/04/09 90 2000/04/08 120 このようなテーブルがある時に前日売上に一つ前のレコードの当日売上の値を更新したいのですが、そのような事をSQL文(1文)で実現することはできるのでしょうか?updateするときに一つ前のレコードの値を取得することは出来るのでしょうか?いろいろとサイトを回って探してみたのですが、該当レコードの値を操作するものはみつかったのですが、他のレコードを操作するものは見つかりませんでした。 よろしくお願いします。見当違いな質問でしたらお許し下さい。
質問日時: 2005/08/13 02:38 質問者: aleck
解決済
5
0
-
具体的なSQLの質問。私にとって難しい…
次のようなSQLが知りたいです。細かいですがお願いします。 「使用テーブル」 Orderテーブル、Order明細テーブル、価格テーブル 「各表の列」 Orderテーブル [OrderNo] 売り先 Order明細テーブル [OrderNo] [商品名] 個数 価格テーブル [商品名][売り先] 価格 [ ]が主キーです。 つまり価格は売り先によって値段が違います。 3つのテーブルを結合してSELECTしOrderNo,商品名,価格を出したいです。 条件は各OrderNoについて個数が一番多い商品名とその価格を表示。 もし個数が同じなら、さらに商品名の文字列順序の早い方で1つ選択。 OrderテーブルにはOrderNoがあるが明細がない場合は、OrderNo以外ブランク。 価格テーブルに商品の価格が登録されてなかったら、価格部分はブランク。 次がややこしいです。 価格テーブルである商品について、すべての売り先に対して 同じ価格なら売り先に'*****’が入ります。 つまり、価格テーブルで1つの商品について個別の売り先で値段が 設定されてなくても、'*****'ならその商品の価格がわかることになります。 '*****'も個別の売り先も登録されていなかったら、その商品の値段がわかりません。 もし、価格テーブルに同じ商品について売り先が '*****'と個別の売り先名の両方で登録されていたら個別の方の価格を選択。 以上です。 Orderテーブルに100件あれば、上のようにすれば100件でると思います。 よろしくお願いします。
質問日時: 2007/11/03 09:41 質問者: wepeel
ベストアンサー
5
0
-
バグってありますか?
データベースを選んでるんですが、AccessはVer1のころから触っていて、安直でわりかし好きです。でも、信頼性からOracleかなとも思っています。 ただ、友人が「Oracle教」の信者で、あんまりうるさく「Oracleは絶対にいい」というもので、ちょっと心情的に反発を感じています。 やっぱり「絶対にいい、バグがない」のでしょうか? 解説書を立ち読みすると、権利関係など設定がかなり複雑で、「チューニングの本」などがあることから、「好きな人にはいい」だけで、「絶対にいい」とはいえないんじゃないか?と思ってしまいます。 また、「バグがない」と言うのも、複雑なために「これはOracleのせいだ」と断言できないような現象がになるだけなんじゃないでしょうか? 分かりやすく教えてください。
質問日時: 2004/05/15 17:38 質問者: ykkw_2001
ベストアンサー
4
0
-
OS認証時にOracle Net Manager接続ができない
solaris9、Oracle10gの環境です。 データベースへの接続はOS認証にて接続しています。 oracle clientの「Oracle Net Manager」にて接続時のuserid/passをOSのuserid/passとしてネットワーク接続をしていますが接続できません。 ご教授願います。
質問日時: 2005/11/10 20:30 質問者: shizu1234
ベストアンサー
4
0
-
Solaris9での学習環境の構築
1ヶ月後に転職を控えています。 今まではPGだったのですが、転職先ではDBエンジニアとして働く予定です。 で、Solaris+Oracleの構築を行う事が多いようなので、その環境で学習をしたいと思っています(Unixは全く触れた事がなく、OracleもWindows環境で体験版で触れた事しかないのですが・・)。 オラクルのHPには、windowsとLinux用しかないのですが、Solarisの場合、Linux用のをインストールするのでしょうか? 初歩的な質問で恥ずかしい限りですが、アドバイスよろしくお願い致します。
質問日時: 2007/02/13 16:12 質問者: ayarainy
ベストアンサー
4
1
-
日本語版のOracle9iを中国語版のOSにインストール可能?
こんにちは 中国語の開発環境を構築していますが、日本で購入したOracle9iを中国のWindowsにインストールし、使用は問題ないでしょうか? ご教示のほどお願いします。
質問日時: 2007/05/08 14:27 質問者: suzukika
ベストアンサー
4
0
-
レスポンスをよくするには?
こんにちは。 最近ずっと仕事でシステムのレスポンスの改善を行っています。 ログをとり、VIEWが遅いのはわかりました。 INDEXを貼ってみたりヒント文を使ってみたりしたのですが、 なかなか早くなりません。 コストが現在2693あります。 これを100未満にしたいのですが・・・ 使っているテーブルは2つあり、 両方ともデータ件数は100万件ほどあります。 それぐらいの件数になると、コストはどうしても増えてしまうのでしょうか? こうしたら早くなるのでは?等の 案があったら教えてください、お願いします。 VIEWの中のSQL部 SELECT TP.STATUS , TP.DENPYO_NO, TP.EDABAN, JH.USER_ID FROM (SELECT P.DENPYO_NO, P.EDABAN, P.STATUS FROM TBL_CHOHYO_KANRI P WHERE P.HAKO_KBN = '99') TP ,(SELECT J.DENPYO_NO, J.EDABAN FROM TBL_DENPYO_RIREKI J) JH WHERE JH.DENPYO_NO = TP.DENPYO_NO AND JH.EDABAN = TP.EDABAN ; 実行計画 ---------------------------------------------------------- 0 SELECT STATEMENT Optimizer=ALL_ROWS (Cost=2693 Card=33854 By tes=1117182) 1 0 HASH JOIN (Cost=2693 Card=33854 Bytes=1117182) 2 1 TABLE ACCESS (FULL) OF 'TBL_CHOHYO_KANRI' (TABLE) (Cost=2 027 Card=127611 Bytes=2424609) 3 1 INDEX (FAST FULL SCAN) OF 'IDX$$_2CCE0006' (INDEX) (Cost =157 Card=203124 Bytes=2843736) 統計 ---------------------------------------------------------- 11 recursive calls 0 db block gets 9812 consistent gets 11039 physical reads 0 redo size 7925659 bytes sent via SQL*Net to client 147915 bytes received via SQL*Net from client 13403 SQL*Net roundtrips to/from client 0 sorts (memory) 0 sorts (disk) 201021 rows processed
質問日時: 2007/07/30 11:15 質問者: sunlight21
ベストアンサー
4
1
-
SQL文(PL・SQL)
給料表として属性が社員ID、給料適用開始年度、給料適用開始月、給料があります。例えば、 1行目→101、2008、8、200,000 2行目→101、2008、10、210,000 3行目→102、2007、12、190,000 というデータがあった場合に2008年の9月の社員全体の給料合計を求めたいんです。この場合社員101の人は9月時点の給料は200,000で102の人は190,000のままです。このような場合どうSQL or PL/SQLを書けばこの情報を得ることできますか?
質問日時: 2008/09/13 23:00 質問者: haveagolde
ベストアンサー
4
0
-
OMEによるリカバリ方法について
Oracle Enterprise Manager 10gを使用しています。 バックアップファイルからデータのリカバリを したいのですが、思うようにうまくいかないため、 投稿させていただきます。 Oracle Enterprise Managerの 【メンテナンス】タブ⇒【リカバリ実行】 を選択し、リカバリの実行画面に遷移します。 次に、【データベース全体のリカバリの実行】を選択後、 「リカバリ・ウィザード」画面に遷移し、データベースの起動状態を OPEN状態からMOUNTED状態にします。 数分待ち、【リフレッシュ】を押下し、「データベース・インスタンス」画面に 遷移後、【リカバリの実行】を選択します。 【リカバリの実行:資格証明】画面でユーザー名、パスワードを入力後、 【続行】を選択します。 すると、【リカバリの実行:資格証明】画面へ遷移し、 「エラー」と表示されてしまいます。 エラーの詳細を見ると、 SQL> SQL> ERROR: ORA-01031: insufficient privileges と表示されております。 これが表示されているため、リカバリができず 原因すらわからない状態です。 この対処法について、ご教授していただければと 思っております。 以上、宜しくお願い致します。
質問日時: 2009/03/04 22:02 質問者: tkihara197
ベストアンサー
4
0
-
Oracle Database 11g をVistaにインストールしたいです。
こんにちは。今年の4月から開発系の会社に入った新人です。大学の専攻は情報処理とはまったく関係のない、初心者です・・・。 早速ですが質問させていただきます。 現在Oracle Bronzeの勉強をしており、自分のパソコンにもOracleを導入しようと思いました。 ただインストールは完了したのですが、dbconsoleの起動がうまくいきません(蛇足ですがローカルネーミングメソッドのテスト結果は正常でした)。 ★OS:Windows Vista Home Premium, Service Pack 1です。 さて、コマンドプロンプトにて >set oracle_sid=orcle >emtle start dbconsole とすると ---------------- Oracle Enterprise Manager 11g Database Control Release 11.1.0.6.0 Copyright (c) 1996, 2007 Oracle Corporation. All rights reserved. https://***IPアドレス***:5500/em/console/aboutApplication Starting Oracle Enterprise Manager 11g Database Control ...システム エラー 5 が 発生しました。 アクセスが拒否されました。 ---------------- というエラーがでます。そこで参考書に書いてある、「コントロールパネル」→「管理ツール」→「サービス」から「OracleDBconsoleORACLE_SID」で開始/停止ができるという別の方法に従ったのですが、「OracleDBconsoleorlc」などはあるものの肝心の「OracleDBconsoleORACLE_SID」がありません。これはインストールが失敗しているからでしょうか。 ただ、DBconsoleの起動はうまくいっていないはずが、 「https://***IPアドレス***:5500/em」で、Oracle Enterprise Managerにアクセスすることができます。教科書にはポート番号はデフォルトで1158だと書いてあったのですが、なぜ5500に変更されているのでしょうか。(http://www.shift-the-oracle.com/oracle-net/oracle-port-number.htmlなどを見てみたのですが理解できませんでした。) 以上、よろしくお願いいたします。
質問日時: 2009/07/28 02:15 質問者: creampan8
ベストアンサー
4
0
-
ORACLE SQL 複数項目の最大抽出
はじめまして 当方、初心者で勉強の身です。ご回答頂けたら幸いです。 Oracle10gを使っています。 表1 カラムA(PK) CHAR型 カラムB(PK) CHAR型 カラムC(PK) CHAR型 カラムD(PK) CHAR型 A B C D --------------------------------- AUD 2012 1 30 AUD 2011 12 26 EUR 2010 7 1 EUR 2011 6 21 EUR 2012 5 1 JPY 2011 6 26 JPY 2011 12 25 というデータであれば A B C D --------------------------------- AUD 2012 1 30 EUR 2012 5 1 JPY 2011 12 25 というデータを抽出したいと考えています。 具体的には、Aをキーにして、B(年)、C(月)、D(日)の年月日の最新日付を取りたいですが どうすればよいでしょうか。 お手数をおかけしますが、よろしくお願い致します。
質問日時: 2012/02/21 20:28 質問者: c_gen
ベストアンサー
4
0
-
ある値以上の空き番の最小値を取得するSQL
テーブル TB の項目 CDがNUMBER型でユニークキーだとします。 このCDで ・ある値以上の空いている最小の番号を取得したい。 としたら1つのSQLで実現できますか? 例) CDの値が 6・・・・80 150・・・ (81から149は存在しない) という具合に存在していた場合に、101以上で空いている最小の番号 を取得したいのです。 この場合は101です。1が取得されても駄目、81が取得されても駄目です。 また、同じ条件でデータが 6・・・・150 200・・・ (151から199は存在しない) の場合には151が取得したいのです。 このような値を検出するSQLってわかりますか? 以上よろしくお願い致します。
質問日時: 2013/01/08 15:03 質問者: bonnumaman
ベストアンサー
4
0
-
select insert 句
自サーバDBでselectしたデータをそのまま他サーバDBへ直接insert出来ますか? 出来るんであればその方法を教えてください。
質問日時: 2013/06/06 16:58 質問者: narang
ベストアンサー
4
0
-
ORACLE-64からデータをACCESS2007に抽出する方法
ORACLE-32からODBCでデータをアクセス2007で抽出していました。 アクセスは32BITにしか対応していないということで、ORACLE-64からはアクセスへデータを抽出不可能で、ORACLE-32へ再インストールしかないということを調べました。 しかし、ORACLE-64からダウンするのは、できればやりたくないので、他にデータをアクセスで読み込むような方法があれば教えてください。 PCのOSはWIN10-64です。
質問日時: 2019/08/07 10:18 質問者: papiyonys
ベストアンサー
4
0
-
このようなDELETEはできますか?
こんにちは。DELETE文の削除条件について教えてください。 例えば下記のような2つのテーブルがあったとします。 ATABLE KEY1(ID) KEY2(DATE) ・・・・・・・・・・ ------------------------------------------------ 100000 2004/09/01 ・・・・・・・・・・ 200000 2004/09/01 ・・・・・・・・・・ 300000 2004/09/01 ・・・・・・・・・・ BTABLE KEY1(ID) KEY2(DATE) CODE ・・・・・・・・・・ ------------------------------------------------ 100000 2004/09/01 0 ・・・・・・・・・・ 200000 2004/09/01 0 ・・・・・・・・・・ 300000 2004/09/01 1 ・・・・・・・・・・ この2つのテーブルで、BTABLEのCODEが1のレコードにKEYで関連付くATABLEのレコードを削除したいのです。 プログラムの中では対応できるのですが、SQL1文で実行させることはできるでしょうか? とりあえず下記のように作ってみました(いたずらに長いかもしれませんが)。 DELETE FROM ATABLE WHERE KEY1 IN (SELECT ATABLE.KEY1 FROM ATABLE,BTABLE WHERE ATABLE.KEY1 = BTABLE.KEY1 AND ATABLE.KEY2 = BTABLE.KEY2 AND BTABLE.CODE = 1) AND KEY2 IN (SELECT ATABLE.KEY2 FROM ATABLE,BTABLE WHERE ATABLE.KEY1 = BTABLE.KEY1 AND ATABLE.KEY2 = BTABLE.KEY2 AND BTABLE.CODE = 1) これで良い/悪い、もっと簡潔にできる、などありましたら是非お聞かせ願えますでしょうか? よろしくお願いします。
質問日時: 2004/09/15 13:22 質問者: h164
ベストアンサー
4
0
-
SQLで後方の文字列を置換する方法
表現方法が稚拙で申しわけありませんが。 あるテーブルに存在する値を、他のテーブルにある値と前方一致で結合したいと思います。 (1)TBL_A(項目名はA) (a) 10230 (b) 11350 (c) 30040 (2)TBL_B(項目名はB) (d) 10200 (e) 11000 (f) 30000 (形式はVARCHAR2,値は数字のみで長さは固定) 上記のようなデータで、TBL_Bに関しては後ろの「0」は無視して 前方一致で結合したいのです。 つまり、(a)と(d)、(b)と(e)、(c)と(f)が結合されるようにしたいのです。 SQL文で表現すると、次のようになります。 TBL_A.A LIKE '102%' OR TBL_A.A LIKE '11%' OR TBL_A.A LIKE '3%' これを次のようなSQLで記述してみました。 TBL_A.A LIKE SUBSTR(TBL_B.B,1,INSTR(TRANSLATE(TBL_B.B,'123456789','XXXXXXXX'),'X',-1,1)) || '%' 以上のSQLで問題ないと思いますが、もっとシンプルな方法があればお教え願います。 DBはORACLE9iです。
質問日時: 2004/10/19 17:08 質問者: NAATAN
ベストアンサー
4
0
-
お勧めのSQLツール
今使っているのがOracleなのでここに書かせてもらいました。 今までSQL+やACCESSを使っていたのですが、いまいち使いにくくてみなさん、お勧めのSQLツールを教えてください。
質問日時: 2004/11/12 10:55 質問者: noname#121637
ベストアンサー
4
0
-
SQLでの条件抽出方法の記述
はじめまして。 今回、SQLである条件を絞りたいのですがその方法がいまいちピンと来ず、思考錯誤しております。 例えばですが… テーブルにCD,DATA,YMと定義します。 条件としては、 ・MAXを使わずに、YMという値の個々別の最新のもの ・同じCDは重複しない1件のみ(DISTINCT?) ・表示するのはCDとDATAのみ ・(下図で言うと)DATAは0402~0405まで(BETWEEN?) 図で表すと、 CD DATA YM ---------------- 01 AAAA 0401 01 AAAA 0402 01 AAAA 0403 01 AAaa 0404 01 AAaa 0405 ←01の最新 02 BBBB 0402 02 BBBB 0403 ←02の最新 03 CCCC 0402 03 CCCC 0404 03 cccc 0405 ←03の最新 03 cccc 0406 ←これは期間外 ↓ CD DATA YM ---------------- 01 AAaa 0405 02 BBBB 0403 03 cccc 0405 このように抽出したいのですが、良い書き方はあるでしょうか?
質問日時: 2004/11/25 19:52 質問者: LipTrek
ベストアンサー
4
0
-
PL/SQLカーソルの2重FORループができません
こんにちは。 PL/SQLで下記のようなFORループを 2重3重に処理することはできないのでしょうか? コンパイル時に PLS-00103: 記号"END"が見つかりました と、内ループの"END"に対して起こられてしまいます。 お分かりになる方、よろしくお願いします。 … <<L_OUT>> FOR data_a IN csr_a LOOP … <<L_IN>> FOR data_b IN csr_b LOOP END LOOP L_IN; … END LOOP L_OUT; …
質問日時: 2004/12/16 21:04 質問者: pink_tomato
ベストアンサー
4
0
-
Oracle8iの使用方法について
今回、初めてOracleを扱うことになりました。 やることは、PL/SQLのプログラムを作成、 テストです。 現在、PL/SQLのプログラムを作成しました。 これから後の作業で使用するツール(画面)が よくわからないので教えてください。 1.コンパイル SQLPLUSで、ファイルを開いて、「@ファイル名.sql」で コンパイルでいいのでしょうか? WorkSheetでも出来ると聞いたのですが、 どのツールが便利でしょうか? 2.テスト 作成したPL/SQLのプログラムを実際 試す場合、SQLPLUSの実行でいいのでしょうか? 実際のプログラムの内容は、 あるファイルを読みこんで、テーブルのデータを 更新する、といったものなんですが・・・ ★その他質問 1)CSEというソフトをダウンロードしたのですが、 これは、Accessのように使えるんですか? テストで使うデータは、Accessのように、 CSEで値を入力すればいいんでしょうか? データは一般的にどのツールで作成するのが いいのでしょうか? 2)オブジェクトブラウザというのは、なんのことでしょうか? 3)他に、Oracleで使用するメジャーなツール がありましたら、教えてください。 以上、初歩的な質問で申し訳ありませんが よろしくお願いします。
質問日時: 2005/02/02 00:00 質問者: suigaku
ベストアンサー
4
0
【データベース】に関するカテゴリ
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
【Oracle】に関するコラム/記事
-
メダロット:第241話「Vol.241※期間限定公開」
天才メダロッター六葉カガミの戦いを描く「メダロット再~リローデッド~」(漫画:伯林、監修:イマジニア)、20周年を迎えた『メダロット』が新たなストリーでココに再起動!!★全話無料で読める、週刊メダロット通信...
-
賃貸で可能な古民家風レトロな部屋作りのコツ!改めて知る畳の高い機能性と魅力も紹介
生活スタイルが欧米化している昨今、和室よりも洋室の人気が高く、畳の需要が減ってきている。和風の民家が洋風にリノベーションされ売りに出されているのを目にしたことがある人も多いだろう。実際「教えて!goo」に...
-
メダロット:第240話「Vol.240※期間限定公開」
天才メダロッター六葉カガミの戦いを描く「メダロット再~リローデッド~」(漫画:伯林、監修:イマジニア)、20周年を迎えた『メダロット』が新たなストリーでココに再起動!!★全話無料で読める、週刊メダロット通信...
-
『保留にする勇気』を持つメリットとは?慣れない新環境で感じる気持ちのギャップ
春から新しい環境に身を置いている人も多いだろう。職場や学校に早く慣れ頑張りたいと思っていても、周囲と自分の気持ちにギャップがあり、ストレスを感じてしまうことがある。「教えて!goo」にも「保育士です。春か...
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
batファイルでのSQL(oracle)実行...
-
SQLについて教えて下さい。 主キー...
-
sqlで質問です。 idを元にidに紐付...
-
orace SQL文のエラー(ORA-00923: F...
-
Oracleでの登録するユーザーと、ロ...
-
Oracle SQRの正式名称は何ですか?
-
select for updateのロック
-
sqlで質問です。 Aテーブルは店番、...
-
質問です。 下記のテーブルとデータ...
-
sqlで質問です。 Aテーブルの登録番...
-
sqlで質問です。 Aテーブルの情報を...
-
オラクルゴールドについて
-
ビットで表せる数値について
-
update文で質問です。 下記の条件で...
-
SQL update方法
-
テーブルやカラムの物理名のネーミ...
-
SQLで日付+時間で絞り込みたい
-
' シングルクォート " ダブルクォー...
-
続.ORACLEのSELECTのソートについ...
-
子供向けプログラミングのスクラッ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
副問合せにLIKE文を使う方法はない...
-
batファイルでのSQL(oracle)実行...
-
oracleのimpdpでORA-39166
-
データベースのカラムの型がCHAR型...
-
64bit端末でのOLEDB接続に関して
-
ORA-14452について
-
osqleditについて
-
Oracleで文字列型の時間を引き算し...
-
バッチファイルで複数フォルダ毎の...
-
orace SQL文のエラー(ORA-00923: F...
-
ワークテーブルって何?
-
SQLで今日の日付でWhereしたい
-
SQLについて教えて下さい。 主キー...
-
oracleの直接接続のクライアント接...
-
SQL 2つのテーブルとSUBSTRINGの条...
-
質問です。 下記のテーブルとデータ...
-
続.ORACLEのSELECTのソートについ...
-
SQLの中上級者へのレベルアップ方法...
-
テーブルやカラムの物理名のネーミ...
-
下記のsqlで取得されるレコード以外...
おすすめ情報