回答数
気になる
-
テーブル定義書(Oracle) 【IX】項目
いままではソフト系の開発を行っていたのですが、 今度、DBまわりの業務を行うことになりテーブル設計書を作成しております。 初めてなので、社内のテーブル定義書を参照しながら作成していると 番号、列名、列ID、データ型、桁数、NULL、PKの次から【IX1】...【IX10】という項目が並んでおり Googleで調べましたがインターネットエクスチェンジの略などの基本情報は載っていましたが、 実際にテーブル設計に関係のある項目かどうかは具体的に理解することは出来ませんでした。 識者の方がいれば、テーブル設計書においてこの項目の意図することはなにかを教えていただきたいです。 以上、よろしくお願いします。
質問日時: 2010/12/21 19:49 質問者: anman0201
ベストアンサー
1
0
-
SQL文 抽出条件 複数の場合のやり方
下記のような状況では どのようにSQL文を書けばよいのか教えてください。 例) テーブルA 氏名ID 住所 12345 東京都XXX区XXXX町1-1-1 12346 埼玉県XXX市XXXX町1-2-1 ・・・ テーブルB 住所(詳細に記載されているものもあれば、都道府県レベルのものもある) 東京都XXX区XXXX町 東京都▲▲区○○ 北海道 埼玉県◆◆市 ・・・ テーブルBに書いていある住所で始まる 全ての氏名IDを テーブルAから取り出したい。
質問日時: 2010/12/21 11:30 質問者: 1204533
解決済
3
0
-
テーブル参照について
お世話になります。 AテーブルとBテーブルを比較し、Aテーブルにしかないデータ一覧を表示するSQL文を作成しました。 SELECT * FROM Aテーブル WHERE NOT EXISTS(SELECT * FROM Bテーブル WHERE CODE=Aテーブル.CODE AND NAME=Bテーブル.NAME) 下記の場合はどのように記述すればいいのでしょうか? 検索結果はAテーブルに存在しているが、BテーブルまたはCテーブルには存在していないデータ。 以上よろしくお願いいたします。
質問日時: 2010/12/20 11:38 質問者: teas
ベストアンサー
3
0
-
SQL*Plus のSAVEとGETコマンド
現在、WindowsXP環境で、オラクル11g R2を勉強中です。SQL*Plus でSELECT文を1つ実行し、その後、SAVEコマンドを使ってバッファをファイルに保存しました。ファイルの中身は、メモ帳で開くと、以下のような感じです。 SELECT no FROM student / バッファをクリアして、このファイルをGETコマンドでバッファに読み込み、RUNコマンドで正常に実行できました。 今度は、違うSELECT文を実行します。次に、「SAVE ファイル名 APPEND」で、実行したバッファの内容を、先ほどのファイルに追加しました。ファイルの中身は、メモ帳で開くと、以下のような感じです。 SELECT no FROM student / SELECT no,name FROM student / ところが、バッファをクリアして、上記のファイルをGETコマンドで読み込み、RUNコマンドで実行すると以下のようなエラーになります。 SQL> run 1 SELECT no FROM student 2 / 3* SELECT no,name FROM student / * 行2でエラーが発生しました。: ORA-00933: SQLコマンドが正しく終了されていません。 APPENDで追加する前のSQL文では、問題なかったので、APPENDしたことで、最初のSQL文の終端がおかしくなったようです。気になるのは、SQL文の次の行に挿入されている / です。なぜ、このような文字が勝手に挿入されるのでしょうか?これは、Windows 環境が原因でしょうか?それとも、SAVE APPENDのバグでしょうか? 初歩的な質問で恥ずかしいのですが、原因や対策方法がおわかりの方がいらっしゃいましたら、教えていただけないでしょうか。
質問日時: 2010/12/20 01:57 質問者: hiromi_001_11
解決済
3
0
-
SQL Loaderを使いたい
Oracleのバージョンは8、自分のPCには Oracle8Client(Application User) がインストールされています。 見よう見まねで制御ファイルを記述し、バッチファイルを作成したところ、 ( sqlldr USERNAME/PASSWORD@SID control= test.ctl ) コマンドプロンプトには以下のように表示されました。 「C:\SQL>sqlldr USERNAME/PASSWORD@SID control = test.ctl 'sqlldr' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチファイルとして認識されていません。」 実行できない原因はどこにあるか教えてください。 1.そもそもSQL Loaderを利用できる環境になっていない (そのままでは使えなくて何かしら設定が必要とか) 2.コマンドがまちがっている (test.ctlのパスを記述しないとだめとか、SIDは要らないだとか) 3.制御ファイルがまちがっている どの可能性が一番高いでしょうか?
質問日時: 2010/12/18 18:13 質問者: AndYouAndI
ベストアンサー
3
0
-
テストデータを作成したい
Oracle9iです。テストデータを作成したいです。 カラムが200くらいあるテーブルに対して、既に登録済みの1レコードの主キーだけ変更したものを10万件登録したいのですが、何かいい方法はないでしょうか?
質問日時: 2010/12/17 01:20 質問者: ikedaikeda2008
解決済
4
0
-
oracle11g(64bit)に接続
クライアント側 oracle_Client10.2.3 windows2003 サーバ側 oracle11g(64bit)Windows7(64bit) で接続したいのですが、tnsnameのhostをサーバ側のIPに変更しました。 tnspingでTNS_12542のエラーがでます。 リスナーの登録ができていないと思います。 仕方をおしてください。
質問日時: 2010/12/16 18:15 質問者: marugori
ベストアンサー
3
0
-
ORACLEのUPDATEについて教えてください
いつもお世話になっています。 以下の処理を実現するUPDATEの記述を教えて頂けないでしょうか? よろしくお願い致します。 (ORACLE9i、PL/SQLを想定しています) 【店舗T】に、【売上T】の売上区分が”2”のレコードを対象に、予定日が指定日より近い順に 最大5日分設定する。 ※対象となる【売上T】のレコードは、予定日が指定日以降のみ対象とする ※【売上T】は各店舗毎に、0件から数十件まで存在する。 ※【店舗T】の売上履歴は毎回クリアし、売上Tより求める 【店舗T】 │ │ 売 上 予 定 情 報 │ │店舗│直近1│直近2│直近3│直近4│直近5│ ┼──┼───┼───┼───┼───┼───┼ │A店│ │ │ │ │ │ │B店│ │ │ │ │ │ │C店│ │ │ │ │ │ │D店│ │ │ │ │ │ 【売上T】 │店舗│予定日│売上区分│ ┼──┼───┼────┼ │A店│12/10 │ 2 │○対象 │A店│12/20 │ 2 │○対象 │A店│12/30 │ 1 │※売上区分が”1”の為、対象外 │A店│12/31 │ 2 │○対象 │ │ │ │ │C店│12/01 │ 2 │※指定日(12/10)より前の為、対象外 │C店│12/05 │ 2 │※指定日(12/10)より前の為、対象外 │C店│12/11 │ 2 │○対象 │C店│12/11 │ 1 │※売上区分が”1”の為、対象外 │C店│12/15 │ 2 │○対象 │C店│12/21 │ 2 │○対象 │C店│12/25 │ 2 │○対象 │C店│12/30 │ 2 │○対象 │C店│12/31 │ 2 │※5件を超えた為、対象外 │ │ │ │ │D店│12/15 │ 1 │※売上区分が”1”の為、対象外 │D店│12/18 │ 1 │※売上区分が”1”の為、対象外 ---12月11日の結果--- 【店舗T】 │ │ 売 上 予 定 情 報 │ │店舗│直近1│直近2│直近3│直近4│直近5│ ┼──┼───┼───┼───┼───┼───┼ │A店│12/20 │12/31 │ │ │ │ │B店│ │ │ │ │ │ │C店│12/11 │12/15 │12/21 │12/25 │12/30 │ │D店│ │ │ │ │ │
質問日時: 2010/12/15 20:28 質問者: tkuzume
ベストアンサー
2
0
-
ORACLE UPDATE・INSERTについて
いつもお世話になります。 ORACLE9i・PL/SQL上で複雑!?なUPDATE&INSERTがあり、それぞれを別々に 処理することにはしました。 ただ、UPDATE、INSERTをそれぞれ一回で完了させるSQLが掛けません (私には複雑すぎるので・・) どなたか以下の処理を実現する、UPDATE文、INSERT分を教えて頂けないでしょうか? 例) 店舗別の【予算T】があります。 ・予算額欄が、ゼロの場合、UPDATEを行う (1)【店舗M】の「業種区分」を求める (2)「業務区分」より、【業務分類】の「予算G」を求める (3)「予算G」より【グループ別予算】の予算額を求める (4)求めた予算額で、【予算T】の「予算額」を更新する。 ・【予算T】に存在しない店舗の予算レコードのINSERTを行う (1)【予算T】に存在しない店舗の「業種区分」を【店舗M】より求める (2)「業種区分」より【業務分類】の「予算G」を求める (3)「予算G」より【グループ別予算】の予算額を求める (4)求めた予算額、店舗の情報を【予算T】にレコード登録する。 【予算T】 │店舗│予算額│ ┼──┼───┼ │A店│ 5000 │ │C店│ 0000 │ │D店│ 3500 │ 【店舗M】 │店舗│コード│業務区分│ ┼──┼───┼────┼ │A店│00001 │001 │ │B店│00002 │001 │ │C店│00003 │003 │ │D店│00004 │003 │ │F店│00030 │002 │ 【業務分類】 │業務区分│予算G│ ┼────┼───┼ │ 001 │ A │ │ 002 │ A │ │ 003 │ B │ │ 004 │ C │ 【グループ別予算】 │予算G│予算額│ ┼───┼───┼ │ A │10000 │ │ B │05000 │ │ C │05000 │ │ D │03000 │ ーー結果ーー ・UPDATE 【予算T】 │店舗│予算 │ ┼──┼───┼ │A店│ 5000 │ │C店│ 5000 │ │D店│ 3500 │ ・INSERT後(最終結果) 【予算T】 │店舗│予算 │ ┼──┼───┼ │A店│ 5000 │ │B店│10000 │ │C店│ 5000 │ │D店│ 3500 │ │F店│10000 │
質問日時: 2010/12/14 13:56 質問者: tkuzume
ベストアンサー
2
0
-
sql文
以下のテーブル テーブル名:t1(num1,kingaku) ,t2(num1,kingaku2) ここでt1.num1(1,2,3) ,t2.num1(3,4,5) とあった場合num1をキーとしてnum1(1,2,3,4,5)となるようなテーブルを作成したいのですが、 どのようなsqlでできるでしょうか? dbはoracle,posgre,mysqlなどでお願いします。
質問日時: 2010/12/06 12:07 質問者: vfrtgb
ベストアンサー
3
0
-
LEFT JOIN の結合結果について
お世話になります。 ”SELECT Aテーブル.* Bテーブル.* FROM Aテーブル LEFT JOIN Bテーブル ON Aテーブル.KEY = Bテーブル.KEY”を 行った場合、Aテーブルにしか存在しないデータのBテーブル側の値は常にNULLに なるようなのですが、この場合ゼロを固定に設定することは出来ないでしょうか? よろしくお願いします。 ※ORACLE 9i、PL/SQL上での処理を考えています
質問日時: 2010/12/04 14:24 質問者: tkuzume
ベストアンサー
2
0
-
date '0001-01-01'からの日数
Oracle XEとC#4とでは、0001/1/1からの日数に少し差があるみたいなんです。何ででしょうか? Oracle > select '0101' n, date '0101-01-01' - date '0001-01-01' m from dual > union all select '0201' n, date '0201-01-01' - date '0001-01-01' m from dual > ~ > union all select '2001' n, date '2001-01-01' - date '0001-01-01' m from dual > union all select '2010' n, date '2010-01-01' - date '0001-01-01' m from dual C# > static void Main(string[] args) { > DateTime z = new DateTime(0, DateTimeKind.Utc); > foreach (int i in new int[] { 101, 201, 301, 401, 501, 601, 701, 801, 901, 1001, > 1101, 1201, 1301, 1401, 1501, 1601, 1701, 1801, 1901, 1970, 2001, 2010, }) { > TimeSpan s = new DateTime(i, 01, 01, 0, 0, 0, DateTimeKind.Utc) - z; > Console.WriteLine("{0:0000}{1, 10}", i, s.TotalDays); > } > Console.ReadLine(); > } | | C# | Oracle | 差 | | 0101/01/01 | 36,524 | 36,525 | -1 | | 0201/01/01 | 73,048 | 73,050 | -2 | | 0301/01/01 | 109,572 | 109,575 | -3 | | 0401/01/01 | 146,097 | 146,100 | -3 | | 0501/01/01 | 182,621 | 182,625 | -4 | | 0601/01/01 | 219,145 | 219,150 | -5 | | 0701/01/01 | 255,669 | 255,675 | -6 | | 0801/01/01 | 292,194 | 292,200 | -6 | | 0901/01/01 | 328,718 | 328,725 | -7 | | 1001/01/01 | 365,242 | 365,250 | -8 | | 1101/01/01 | 401,766 | 401,775 | -9 | | 1201/01/01 | 438,291 | 438,300 | -9 | | 1301/01/01 | 474,815 | 474,825 | -10 | | 1401/01/01 | 511,339 | 511,350 | -11 | | 1501/01/01 | 547,863 | 547,875 | -12 | | 1601/01/01 | 584,388 | 584,390 | -2 | | 1701/01/01 | 620,912 | 620,914 | -2 | | 1801/01/01 | 657,436 | 657,438 | -2 | | 1901/01/01 | 693,960 | 693,962 | -2 | | 1970/01/01 | 719,162 | 719,164 | -2 | | 2001/01/01 | 730,485 | 730,487 | -2 | | 2010/01/01 | 733,772 | 733,774 | -2 | もしかして、どこか間違ってますか?
質問日時: 2010/12/03 02:38 質問者: jmh
ベストアンサー
1
0
-
Oracle11gでエクスポートコマンドを実行
Oracle11g初心者です。 Windows7でバックアップの際にエクスポートコマンドを実行した場合に、空のテーブル(行数が0行)のテーブルが出力されない現象をどうにかして直したいと思っています。 どうか、ご指導、ご鞭撻のほどをよろしくお願いします。
質問日時: 2010/12/01 11:21 質問者: masakyuu
解決済
2
0
-
他テーブルの区分を使っての集計に関して
教えて下さい。 AとBというテーブルが存在し、それぞれ Aテーブル 社員番号、金額 Bテーブル 社員番号、部署コード という項目となっています。 ※ かなり簡単なテーブルに省略してありますが、、、、 上記のBテーブルの部署コード毎にAテーブルの金額を集計したいと考えていますが、 そのようなSQLはどのように書くのでしょうか。。。 単純にfrom句で2つのテーブルを指定し、where句で社員番号で結合し、group by で部署コードを指定してもできなかったものですから。。。 初歩的な質問で申し訳ありませんが、教えて頂ければ幸いです。 よろしくお願いします。
質問日時: 2010/11/30 16:09 質問者: yurix_1
ベストアンサー
1
0
-
oracle 10g の勉強方法を教えてください。
oracle超初心者です。 会社から“勉強してね”と言われたのですが、何からはじめればよいのかわからず、 とりあえずOracleの黒本のブロンズを購入しましたが、読みはじめですぐ挫折、 ちんぷんかんぷんで...(汗) 挫折後、「1週間でOracle Masterの基礎が学べる本」を購入し読んで見たのですが、 本の内容がどうやらOracle 11gの内容のようで、違う本を読んでいるんじゃないかと 手を止めてしまいました(汗x2) 自分の環境は、windowsXPです。 すみませんが、どなたかよろしくお願いします。
質問日時: 2010/11/29 18:23 質問者: ma-yo-i-ne-ko
ベストアンサー
3
0
-
突然オラクルへ接続できなくなりました
ローカルにオラクルをインストールして開発をしていました。 しばらく時間があいた後、開発を再開しようとするとDBへの 接続ができなくなっていました。 sqlplusではDB操作可能なので、DBそのものは落ちていないと 思うのですが… リスナーのステータスを確認すると(lsnrctl status SID)下記のエラーが出ます。 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=MY-PC)(PORT=1521))(CONNECT_DATA=( SERVER=DEDICATED)(SERVICE_NAME=SID)))に接続中 TNS-12535: TNS: 操作はタイム・アウトしました。 TNS-12560: TNS: プロトコル・アダプタ・エラー TNS-00505: 操作タイムアウトです。 32-bit Windows Error: 60: Unknown error 何が問題でどうすればよいのかわからないのですが、何か対応策があれば教えてください。 DBを再構築することも考えたのですが、原因がわからなければ同じ事が起こる(起こす?) ような気がするので。 よろしくお願いします。
質問日時: 2010/11/28 13:36 質問者: kahotaka
ベストアンサー
3
0
-
物理ファイルには無い列の追加について
お世話になります。 select文でデータを抽出する時、物理ファイルにはない列を追加して 表示する事は可能でしょうか。 また、その追加した列に値(同じ値でいいのですが)も入れて表示 したいと思っておりますがその方法が良く分かりません。 どなたかご親切な方、 ご教授下さいます様、宜しくお願い致します。
質問日時: 2010/11/28 11:52 質問者: miruchoko
ベストアンサー
1
0
-
date型のインデックス
インデックスが貼ってあるdate型のカラムがあるのですが、うまくインデックスがあたりません。 検索条件を下記のようにしています。 working_date = TO_DATE('2010/11/26') date型は秒数を保持していることが影響しているのでしょうか? ファンクションインデックスを貼って、下記のようにすればインデックスは当たってます。 TO_DATE(working_date,'YYYY/MM/DD') = '2010/11/26' ご存知のかたがおられましたら教えてください。
質問日時: 2010/11/26 22:27 質問者: cosboki
ベストアンサー
6
0
-
データベースリンクとシノニムについて
現在以下の様な状態で、サーバAのスキーマAからサーバBのテーブルを参照しています。 DBLINK(A)を外すとサーバAのスキーマAからサーバBのテーブルをSELECTする事が 出来なくなってしまいますか? スキーマAでサーバBの必要なテーブルが 全てシノニムで定義されていたので、イメージ的に スキーマBのDBLINKが残っていれば サーバAのスキーマA→スキーマB→サーバBのテーブルって感じで 参照出来そうな気がするのですが、どうなのでしょうか? サーバAのスキーマA → DBLINK(A) → サーバB ↓ シノニム ↓ サーバAのスキーマB → DBLINK(B) → サーバB
質問日時: 2010/11/25 21:35 質問者: snowsan062
ベストアンサー
1
0
-
SQLエラーについて
ora-00907エラー:右かっこがありませんが出ます。なぜでしょうか?? strSQL = strSQL + "select K.Hiduke 日付,S.Syouhinmei 商品名,S.Tanka 単価,K.Suryou 数量,(S.Tanka * K.Suryou) 金額"; strSQL = strSQL + " from SyohinHyo S,Kounyurireki K"; strSQL = strSQL + " where K.Syouhinbangou = S.Syouhinbangou and K.Hiduke"; strSQL = strSQL + " between to_date(" + comboBox1 +",'YYYY-MM-DD') and "; strSQL = strSQL + " to_date(" + comboBox2 + ",'YYYY-MM-DD')";
質問日時: 2010/11/23 21:34 質問者: huuuuuuuuuuu
ベストアンサー
2
0
-
ストアドプロシージャの出力について
ストアドプロシージャを出力したいと思っているのですが オブジェクトブラウザからですと、対象のSPを選択し、スクリプト出力することで ファイル出力できると思いますが、 sqlplusなどから、同様にファイル出力を行うことは可能でしょうか? 初歩的なご質問で恐縮ですが ご回答頂けると大変助かります。 よろしくお願い致します。
質問日時: 2010/11/21 16:16 質問者: eclipse508
ベストアンサー
1
0
-
Win7でOracleのリスナーが起動しない
Oracle11gR2を以下の環境にインストールしましたが、 DB操作ができず困っています。 環境 OS:indows7(64bit) DHCP環境 現象としてはDBCAによりDB作成は完了する間際、リスナーが起動していない という警告文が表示されます。 ただ再度DBCAで確認したところ、DB削除の項目に作成したSIDのDBが 表示されていたため、作成自体は完了しているようです。 リスナー自体はDB作成前にNetConfigurationAssistantにより作成済みです。 またDHCP環境であるため、LoopbackAdapterも作成済みです。 さらにLoopbackAdapterとその他のネットワーク設定のインタフェースメトリックスも 調整して、Loopbackが最小値となるようにしています。 Oracleインストールは初心者でネットを参照しつつやってみましたが ここから先に進めず参っています。 どなたか情報をお持ちでしたら教示願います。 よろしくお願いします。
質問日時: 2010/11/21 02:38 質問者: tx2_1977
解決済
2
0
-
スタンバイDBの追加
現在、プライマリDBとスタンバイDBを1:1で運用しており、 データガードを使ってデータ同期を行っています(10g)、 今度、新たなサーバーを立て、そこに新たなスタンバイDBを追加したいと考えています、 その場合、現在動いているDBは停止なしで行えるものでしょうか? (業務上、本番機を停止できない為) それと、本番機をそのままの状態で、仮に新スタンバイDBを空の状態(データが無い)にした場合でも、 既に有るスタンバイDBへの同期処理への影響無くアーカイブログによるデータ同期は可能でしょうか? (本番からのインポートなどをせず、データガードだけでデータの流し込みまで行いたい) スタンバイDBは最大9迄可能とは知っているのですが、 後からのスタンバイDB追加というのが全く判らない状況です、 あまりオラクルには詳しく無く、教えていただけないでしょうか?
質問日時: 2010/11/21 01:26 質問者: etc-etc
解決済
2
0
-
SQLについて
SELECT COUNT( * ) FROM テーブル1で出たデータを別テーブルの数量に書き込みたいのですがどういう風にSQLを書けばいいですか??
質問日時: 2010/11/20 09:50 質問者: huuuuuuuuuuu
ベストアンサー
1
0
-
oracleのupdateについて
oracleのupdateについて お世話になっております。 oracleのupdateについて教えてください。 (1)以下のような更新のupdateを実行し、 update dept set updt_flag=1 where id=1111; (2)commitをする間に別ユーザが以下のupdateを実行したとします。 update dept set updt_flag=0 where id=1111; 上記のような状況を再現した際、 (2)のupdateは(1)のcommitが完了するまで待つという結果になりました。 ここで質問なのですが、 最初のupdateが完了するまで別のupdateは待っているというのが 暗黙のルールなのでしょうか? 初歩的な質問ですみません。 よろしくお願いいたします。
質問日時: 2010/11/19 15:34 質問者: tnk3601
ベストアンサー
2
0
-
create table as select
create table 新TABLE as select * from コピー元TABLE; としたい場合に、"コピー元TABLE" に、LONGROW型項目があり、 失敗してしまいます。 何か、回避策はないでしょうか? 宜しくお願い致します。
質問日時: 2010/11/17 20:21 質問者: riseshinejp
ベストアンサー
2
0
-
11gデータから10gへのインポートについて
あるシステムのDB管理を行うにあたり、 Oracleを使用しているのですが、 Oracleのバージョンの違いにより、 DMPファイルのインポートが行えない事はございますでしょうか? 詳細は以下です。 ローカル環境のシステム Oracle 10g / 10.2.0.1.0 社内環境のシステム Oracle 11g / 11.2.0.1.0 社内環境システムよりバックアップを行い出力されたDMPファイルを ローカル環境へインポートを試みたところ、 以下のエラーが発生し、インポートができません。 *************************************************************************** 接続先: Oracle Database 10g Release 10.2.0.1.0 - Production IMP-00010: 有効なエクスポート・ファイルではありません。ヘッダーは検証に失敗しました。 IMP-00000: エラーが発生したためインポートを終了します。 接続先: Oracle Database 10g Release 10.2.0.1.0 - Production IMP-00010: 有効なエクスポート・ファイルではありません。ヘッダーは検証に失敗しました。 IMP-00000: エラーが発生したためインポートを終了します。 *************************************************************************** 解決方法をご存知の方がおられましたら ご教示いただけると有難いです。 以上、宜しくお願い致します。
質問日時: 2010/11/17 10:10 質問者: eclipse508
ベストアンサー
2
0
-
ロールバック セグメントの指定
バッチ処理にてCOMMIT間隔が大き過ぎてエクステントの拡張が発生しました。 エクステントを拡張は避けたく、COMMIT間隔を小さくしたのですが、 改善効果を、確認したいと思っております。 他のトランザクションもある試験環境なので、alter文?にてバッチ処理が 使用するロールバックセグメント番号を指定し、改善前/後で、V$ROLLSTATで確認 したいのですが、実施方法をご教授頂けないでしょうか? ※ロールバック・セグメント番号 = V$ROLLSTAT.USN
質問日時: 2010/11/16 22:28 質問者: riseshinejp
ベストアンサー
1
0
-
SQLにて縦を横へ展開
[注文表] 注文番号 注文商品 注文金額 ======================= 111 あああ 5500 222 いいい 3000 [注文オプション表] 注文番号 オプション ================ 111 P1 111 P2 222 D1 上記のようなテーブルがあります。 これを下記のようにSQLでまとめたいですが可能でしょうか。 もしありましたら、サンプルSQLをご教示いただけませんでしょうか。 [注文一覧] 注文番号 注文商品 注文金額 オプション1 オプション2 ====================================================== 111 あああ 5500 P1 P2 222 いいい 3000 D1 お手数をお掛けしますが、なにとぞよろしくお願いいたします。
質問日時: 2010/11/15 01:47 質問者: uff-n
ベストアンサー
5
0
-
OracleのSQLについて
OracleのSQLについて質問があります。 VARCHAR2をReturnするFunction「GETKANANAME(引数はID)」があるとします。 このとき Update NAMELIST SET kananame = (select GETKANANAME('00001') from dual); とすると、kananameに何も設定されません。 (エラーメッセージなどは何も出ていません。) select GETKANANAME('00001') from dual; だと期待する値が帰ってくるのですが…。 何か間違ったSQL文なのでしょうか?
質問日時: 2010/11/14 09:29 質問者: folnia
解決済
2
0
-
Select表示でCPUが100%になる
Windows2003上のOracle Clientの10.2.0.4のSQLPLUSで、別Oracle10.2.0.3サーバー上のテーブルの中身を表示しようとすると、CPU使用率が100%になってしまい困っています。SQLPLUS自体のプロセスが100%消費しています。 別のクライアントからは、特に問題なく表示されます。このWIndows2003マシンの何が悪いのか、なにか考えられる原因はありますでしょうか?
質問日時: 2010/11/13 08:13 質問者: Teru4051
ベストアンサー
2
0
-
固定値を含む結合と複数テーブルの結合について
「1.固定値を含む結合」と「2.複数テーブルの結合」について教えて下さい。 最近oracleを使い始めてSQLで表の結合を書く場面があるんですが LEFT(RIGHT) JOIN を使うのか、(+)を使って書くのかで迷っています。 LEFT(RIGHT) JOINだと固定値を含めて外部結合しようとするとエラーになってしまいます。 それが嫌で(+)を使っていたんですが 今度は複数のテーブルを(+)で結合しようとするとエラーになってしまいます。 (AテーブルとBテーブル、AテーブルとCテーブルなど?) こういう場合はどうすれば良いのでしょうか? とりあえず副参照をFROMに指定して対処してるんですが 何かきちんとした書き方があるのでしょうか?誰か教えて下さい。
質問日時: 2010/11/11 22:44 質問者: snowsan062
ベストアンサー
2
0
-
マテリアライズドビューログについて
マテリアライズドビューログについて 高速リフレッシュのマテリアライズドビューを作成する際に、マテリアライズドビューログを作成すると思います。それについて3点質問です。 (1)マテビューの作成手順としてはマスタ表作成⇒マテログ作成⇒マテビュー作成だと思いますが、マテログを作成した時点(まだマテビューを作成していない状態)でマスタ表のデータが登録されますでしょうか? 例えば、マテビューを作成せずマテログを作成したままの状態で容量が増加していくのかどうか疑問に思いました。 (2)マテリアライズドビューを作成すると一番最初は完全リフレッシュされると思いますが、その際はマテリアライズドビューログを使用しますか? (3)高速リフレッシュが終わった後はマテログ内のログはなくなるのでしょうか?それとも過去の履歴としてどこかに取得しておくのでしょうか。 バージョンは10gです
質問日時: 2010/11/07 14:57 質問者: tomosuke07
解決済
1
0
-
インサートした日付データについて
インサートした日付データについて お世話になります。 Oracle11gと.NET C#にて開発をしております初心者です。 .NET C#側で日付型(yyMMdd)にした変数を引数にして ストアドプロシージャでOracleのテーブルにインサートした 後、テーブルで結果を見てみると、 下記の様になってしまいます。 頭の20が余計に思います。 考えられる原因としてはどの様な事がありますでしょうか。 テーブルの受けるフィールドの型も日付型です。 ご教授下さいます様、宜しくお願い致します。 記 インサート前(C#側変数の値確認時) インサート後(Oracleテーブル確認) (例) 20101105 20201011 05:00:00
質問日時: 2010/11/06 10:58 質問者: miruchoko
ベストアンサー
2
0
-
DBの移行について
DBの移行について 担当しているシステムのデータベースが、 DB2のV8.1からOracle11gに移行する予定です。 色々と調査してますが、 移行にはSQL関数の違いがネックになるかと考えています。 DB2にはある関数がOracleにはないとか、 同じ関数でも結果が違うとか・・・。 その辺をうまく一覧表に纏めたマッピング表みたいなのって、 ネットにあれば教えて頂ければと思います。 当然、自分でも探してますが、なかなかいいのがありません。 また、Oracleのサイトを覗いてみましたが、 結局問い合わせてくれって事になってます。 (まだまだ調査の段階なので、問い合わせるほどではないんで) よろしくお願いします。
質問日時: 2010/11/02 18:43 質問者: yoshi5570
ベストアンサー
2
0
-
環境がとても古いのですが…。
環境がとても古いのですが…。 Win NT server、Oracle 8.0.5という環境でOracleのSYSのパスワードをEnterprise Managerから変更すると、サーバを再起動した際にOracleのインスタンスが起動しなくなるというエラーが発生しています。サービスを停止して開始するだけでも同様の現象が発生します。 SYSのパスワードをどうしても変更する必要があるのですが、変更方法が分かりません。上記のようなエラーを発生させないで変更する方法をご存知の方がいらっしゃいましたらご教示下さい。 宜しくお願い申し上げます。
質問日時: 2010/11/02 16:40 質問者: itousatou
解決済
3
0
-
グループ化による集計
グループ化による集計 お世話になります。 下記の様にSQLで集計しようと考えています。 品番で小計額を出そうとしているのですが、 下記記述ですと、小計行が何か2行位ダブって表示されてしまっている様です。 どの様に記述したらダブらないで表示されるでしょうか。 私には少し高度な気がします。 どなたかご親切な方、ご教授下さいます様、宜しくお願いします。 記 select a.計画ID,a.品番,sum(a.合格本数) as 合格本数,sum(a.不良本数) as 不良本数, grouping(a.品番),TO_CHAR(a.受信日,'YYYY/MM/DD')as 受信日 from 伝票LOG a group by rollup(a.計画ID, a.品番, TO_CHAR(a.受信日,'YYYY/MM/DD')) order by a.計画ID 現在の表示 ID 品番 合格本数 不良本数 grouping(a.品番) 1030-2 yyy 20 0 0 1030-2 yyy 30 0 0 1030-2 yyy 50 0 0 ←この行は余計 1030-2 yyy 50 0 0 ←この行は余計 1030-2 (null) 50 0 1
質問日時: 2010/10/31 22:28 質問者: miruchoko
ベストアンサー
2
0
-
日付表示について
日付表示について お世話になります。 Oracle(11g)と.NET C#で開発して いる初心者です。 テーブルをselect文で表示する時に、 日付が入っている列があるのですが、表示形式は、 年月日、時間、分までが表示されているのですが、 これを、年月日までの表示や、年月までの表示形式 に変えるにはどの様にすれば宜しいのでしょうか。 ご教授お願い致します。
質問日時: 2010/10/30 14:09 質問者: miruchoko
ベストアンサー
2
0
-
DECLARE
DECLARE : BEGIN : で始まる無名ブロックと、 CREATE OR RELPLACE PROCEDURE 名前 is : BEGIN : で始まる名前つきブロックとは何が違うのでしょうか? 使い分けることによって、何かメリットがあるのでしょうか?
質問日時: 2010/10/30 10:45 質問者: Awake2008
解決済
2
0
-
SELECT cd_title FROM price_table WH
SELECT cd_title FROM price_table WHERE cd_price<1500 を、cd_title毎に SELECT * FROM cd_table WHERE cd_title = 上記結果 としたいのですが、どうしたらよいのでしょう?
質問日時: 2010/10/28 11:50 質問者: aseton19772626
解決済
1
0
-
PLSQLについて
PLSQLについて 時間がきたら動くようなバッチファイルを作成したいのですが、 ソースコードを書く上でわからないあります。 下記は作成したソースコードですが 変数curA_recのデータ型はcurAのROWTYPEになります。 【質問1】dbms_outputの箇所を変更して抜き出したレコードをTAB区切りのtxt形式で出力する際の具体的なステートメントがわかりません。 【質問2】このファイルを任意のディレクトリにおいて時間がきたらファイルを実行するようにしたいのですがデータベース接続のためのConnect文を記述する箇所は一番上のset serveroutputの下に記述していいのでしょうか? どなたか詳しい方お願いします。 <ソース> set serveroutput on declare cursor curA is <SQL文> curA_rec curA%ROWTYPE; BEGIN open curA; LOOP fetch curA INTO curA_rec; exit when curA%NOTFOUND; dbms_output.put_line(curA_rec.伝票番号||' '||curA_rec.伝票日付||' '||curA_rec.出荷先店番||' '||curA_rec.ブランド品番||' '||curA_rec.JANコード||' '||curA_rec.出荷数量||' '||curA_rec.商品単価||' '||curA_rec.商品名||' '||curA_rec.カラー名||' '||curA_rec.サイズ名||' '||curA_rec.ブランド||' '||curA_rec.サブブランド||' '||curA_rec.大分類||' '||curA_rec.中分類||' '||curA_rec.小分類||' '||curA_rec.カラー||' '||curA_rec.サイズ); END LOOP; CLOSE curA; END;
質問日時: 2010/10/27 20:33 質問者: anman0201
ベストアンサー
3
0
-
お世話になります。
お世話になります。 sql loaderでpostgresqlのbytea型のデータをoracleのraw型にどう取り込むか困っていますが bytea型のデータは8進数のエスケープされた文字(\\313\\314\\263\\244)ですが、raw型のほうは バイナリデータしか入れない仕様なんですが、 どう変換するか、どの関数を使えば、うまく行ける方法をご存知の方がいらっしゃいましたら、是非お願いいたします。
質問日時: 2010/10/27 17:29 質問者: gooidgwd
解決済
1
0
-
oracle11gで、PL/SQLにてAというテーブル内の項目にCLO
oracle11gで、PL/SQLにてAというテーブル内の項目にCLOB型のデータがあります。 そのCLOB型項目を別テーブルの1、2、3のVERCHAR2型にそれぞれ4000バイトずつに 振り分けたいと考えています。 CLOB型ですと、DBMS_LOB.SUBSTRを使用する方法等があると思いますが、バイト数で振り分ける方法なないものでしょうか? 教えて頂きますようお願いします。
質問日時: 2010/10/23 00:31 質問者: 77kun
解決済
4
0
-
Oracle 10.2 SE RACにおいて、2つの違うネットワークセ
Oracle 10.2 SE RACにおいて、2つの違うネットワークセグメントをリスニングさせたいのですが、パブリックのセグメントは複数設定できませんでしょうか?
質問日時: 2010/10/21 02:46 質問者: okaponyo
ベストアンサー
2
0
-
なぜ、WHERE句とHAVING句があるのか?(質問文修正版)
なぜ、WHERE句とHAVING句があるのか?(質問文修正版) SQLを学んでいる時に、疑問に思ったことがあります。 それは、「なぜ、WHERE句とHAVING句があるのか?」ということです。 この2つは、 ・WHERE句 → 表から取り出す行の条件を指定 ・HAVING句 → グループ化した結果から取り出す行の条件を指定 という違いがあることは分かっています。 ですが、おなじ「行のかたまりに対する抽出条件」を指定しているのに、 なぜ、わざわざ2つに分ける必要があったのでしょうか? 分けないと不都合が生じるのでしょうか。 もし、明瞭簡潔に説明できる方がいらっしゃいましたら、教えていただけないでしょうか。 ※本質問は、質問内容に質問の主旨が変わってしまう大きな誤りがあったため、いったん締め切り後、再掲載させていただきました。
質問日時: 2010/10/19 22:09 質問者: yuki-alpha
ベストアンサー
5
0
-
変数が選択リストにありません
変数が選択リストにありません 下記のコードを実行すると「変数が選択リストにありません」というエラーが出てしまいます。 SELECT文とFETCHのINTOの変数の個数が一致していない場合にこのエラーは出るということらしいのですが、問題ないように思うのです。 下記コードで何が問題になっているのか教えてください。 よろしくお願いします。 set serveroutput on; declare -- 各テーブルの全カラムを取得 cursor curcol (p_tblname user_tables.table_name%type) is select COLUMN_NAME,DATA_TYPE from user_tab_columns where table_name = p_tblname ; v_sql varchar2(1000); -- SQL文 v_col varchar2(1000); -- カラム名 v_val varchar2(1000); -- 取得データ v_tblname varchar2(20); -- テーブル名 v_RstExec integer; v_CursorID integer; begin v_col := ''; v_tblname := 'sample'; -- 取得テーブルのカラムを取得 for rowcol in curcol(v_tblname) loop -- 取得カラムをCSV形式に変換 if v_col is null then v_col := rowcol.COLUMN_NAME; else v_col := v_col||'||'',''||'||rowcol.COLUMN_NAME; end if; end loop; dbms_output.put_line(v_col); -- SQL作成 v_sql := 'select '||v_col||' from '||v_tblname; v_CursorID := DBMS_SQL.OPEN_CURSOR; DBMS_SQL.PARSE(v_CursorID, v_sql, DBMS_SQL.NATIVE); v_RstExec := DBMS_SQL.EXECUTE(v_CursorID); LOOP IF DBMS_SQL.FETCH_ROWS(v_CursorID) = 0 THEN EXIT; END IF; DBMS_SQL.COLUMN_VALUE(v_CursorID, 1, v_val); DBMS_OUTPUT.PUT_LINE(v_val); END LOOP; DBMS_SQL.CLOSE_CURSOR(v_CursorID); end; /
質問日時: 2010/10/18 12:13 質問者: shaka001
ベストアンサー
4
0
-
オラクルのデータベースは大変よく使われていますが、フリーのソフトでそれ
オラクルのデータベースは大変よく使われていますが、フリーのソフトでそれに代わるものはないのでしょうか?
質問日時: 2010/10/15 14:08 質問者: ete_mer
ベストアンサー
3
0
-
ASP.NETでのオラクルAL16UTF16について
ASP.NETでのオラクルAL16UTF16について OS WindowsXP VisualStudio .NET 2003 + Oracle 10g にてASP.NET 2.0 の 開発を行っています。 オラクルではキャラクタセットでAL16UTF16を指定しています。 ASP.NETでは、web.configで <?xml version="1.0" encoding="utf-8" ?> と <globalization requestEncoding="UTF-8" responseEncoding="UTF-8" /> を指定しています。 このように設定して、特に今のところ不具合があるわけではないのですが オラクルではUTF-16、ASP.NETではUTF-8となっていて 違うものを指定していても不具合等はないのでしょうか。 または、不具合がまだ見つかっていないだけでしょうか。 以上、ご教授をお願いします。
質問日時: 2010/10/15 10:50 質問者: SenjoNoY
ベストアンサー
1
0
-
単体テストレベルのテストデータの作成方法
単体テストレベルのテストデータの作成方法 以前、このような質問をさせていただきました。 http://oshiete.goo.ne.jp/qa/4951742.html いまだに同じ悩みを抱えておりまして、皆様どのようにしているのだろうか、あらためてご質問させていただきたいと思います。 あるいは、「このサイトで質問するよりもっと適切ながある」ということでしたら、そのサイトを教えていただけないでしょうか。 より具体的な例で質問させていただきたいと思います。 例えば、次のようなテーブル群があったとします。 ※OracleベースのDDL(適当&適宜省略(^^;)で示しております。 ※同一カラム名の個所は、それぞれのテーブルにひもづいています。 ※単純な例なので、各テーブルの関連はテーブル名でお分かりになるかと思います... CREATE TABLE 受注テーブル ( 受注ID VARCHAR2(10) PRIMARY KEY, 顧客ID VARCHAR2(10) 受注日 DATE, ); CREATE TABLE 受注明細テーブル ( 受注ID VARCHAR2(10), 製品ID VARCHAR2(10), 数量 NUMBER(10,0), PRIMARY KEY (受注ID, 製品ID) ); CREATE TABLE 顧客マスタ ( 顧客ID VARCHAR2(10) PRIMARY KEY, 顧客会社名 VARCHAR2(100), ); CREATE TABLE 製品マスタ ( 製品ID VARCHAR2(10) PRIMARY KEY, 製品名 VARCHAR(100), 仕入先ID VARCHAR2(10) ); CREATE TABLE 仕入先マスタ( 仕入先ID VARCHAR2(10) PRIMARY KEY, 仕入先会社名 VARCHAR2(100) ); 正常系のテストパターンが(仮に)数十あるものとして、各パターンごとに0件から10件程度のデータを作成したいです。 皆様どのようにテストデータを作成しているのでしょうか。 あるいは、上記の例ではたかだか5テーブルのリレーションではありますが、ここでは省略した各種カラムにひもづく別のマスタ群が多数あるとした場合はどうでしょうか。 上記のテーブルの例で言えば「注文テーブル」用のデータを作成しつつ、それにひもづいた正しい「注文明細テーブル」用データを作成するだけでもしんどいと思ってしまいます。 さらに、関連するマスタ群として「顧客マスタ」や「仕入先マスタ」などなど多数ある場合、それぞれの関連を見ながら「正しいデータ(つまりテストデータ自体が間違っている、という事態を避けたい)」を作成するのが難しいと感じてしまいます。
質問日時: 2010/10/14 00:03 質問者: donkypong
解決済
2
0
-
文字列の連結
文字列の連結 select * from test where testcolum=変数名 といった感じで、文字列と変数を連結したいのですがやり方がわかりません。 declare cdata varchar2(20); begin cdata:='sample'; 'select * from test where testcolum=' || cdata; end; 上のように、select文を動的に変更して実行したいのです。 よろしくお願いします。 /
質問日時: 2010/10/13 16:32 質問者: nanashitar
ベストアンサー
1
0
【データベース】に関するカテゴリ
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
【Oracle】に関するコラム/記事
-
SNSでの誹謗中傷はなぜなくならない?自分で自分を守るための利用方法とは!
今や世の中は「SNS全盛時代」といっても過言ではない。さまざまな情報を得られる半面、誹謗中傷などの不適切な投稿が人の心を傷つけるケースも少なくない。諸刃の剣ともいえるSNSだが、「教えて!goo」 には「ネット...
-
賃貸を退去する際の通常損耗の回復費用は誰が負担?契約時に注意すべき点は?
「退去時における消耗箇所の回復費用を誰が負担するか」というのは、賃貸物件のよくあるトラブルであるが、そもそも通常消耗・経年劣化・特別消耗の意味がそれぞれ異なることはあまり知られていない。 ・通常消耗・...
-
メダロット:第242話「Vol.242※期間限定公開」
天才メダロッター六葉カガミの戦いを描く「メダロット再~リローデッド~」(漫画:伯林、監修:イマジニア)、20周年を迎えた『メダロット』が新たなストリーでココに再起動!!★全話無料で読める、週刊メダロット通信...
-
タスク管理を使いこなして仕事がデキる人へ!タスク管理術を使えば生活にも応用可能!
やるべきことを整理し実行する「タスク管理」。仕事や勉強を効率的に進めるために有効な手法である。「仕事ができる人」は「タスク管理ができる人」というイメージを持つ人も少なくないだろう。「教えて!goo」には、...
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
oracleのimpdpでORA-39166
-
batファイルでのSQL(oracle)実行...
-
パソコンの画面が滑るのはなぜ? カ...
-
64bit端末でのOLEDB接続に関して
-
sqlで質問です。 aテーブルとbテー...
-
副問合せにLIKE文を使う方法はない...
-
質問です。 下記のテーブルとデータ...
-
ビットで表せる数値について
-
子供向けプログラミングのスクラッ...
-
PL/SQLでフェッチでNULLの項目について
-
写真のsql文空白をハイフン表示した...
-
IT 就職よくできますか?? 資格証は...
-
SQLの上達方法について
-
videopad 無料版 アンインストール
-
下記のsqlで取得されるレコード以外...
-
SQLで日付+時間で絞り込みたい
-
Oracle でのSQL文について
-
私は時々、アイホンを充電する時 パ...
-
データベースパフォーマンスチュー...
-
SQL 2つのテーブルとSUBSTRINGの条...
マンスリーランキングこのカテゴリの人気マンスリー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で取得されるレコード以外...
おすすめ情報