- ベストアンサー
SQLの書き方を教えてください
お世話になります。すみませんが教えてください。 ORACLE9iに対してプログラムのSQLの中で以下のような記述をしています。 SUBSTRB(A.TORIHIKISAKI,1,6) ここで、TORIHIKISAKIに「オきゃくさま」というデータが処理対象になったときに、「オきゃ」となってしまいます。 6バイトにして出力したいので「オきゃ」+ブランク1バイト の形にしたいのですがどのように記述すればよいのでしょうか? お手数ですが経験者の方、ご回答、よろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (2)
- Kuppycat
- ベストアンサー率50% (109/216)
- naganaga_001
- ベストアンサー率71% (172/242)
関連するQ&A
- PL/SQLでのSQLエラーログの出力について
PL/SQLでのSQLエラー発生時のログ出力について教えていただきたいことがあります。 既存のシステムで、メインからAの処理を呼び出し、さらにAからBの処理を呼び出している処理で、 エクセプション処理がメインにしか記述されていないものがありました。 この場合、処理Aや、処理BでSQLでエラーが発生した時は、 メインでエラーログが出力されると思いますが、 何か特定特別なケースの場合、きちんと異常が認識できない等の問題はないでしょうか? お手数をおかけしますが、よろしくお願いします。
- ベストアンサー
- Oracle
- SQL*LOADER
VB6.0です。 oracle9iです。 VBのソースでsql*loaderの処理をしたいのですが, どうやったらいいかわからないので教えてください。
- 締切済み
- Visual Basic
- SQLでグルーピングしてやや複雑な集計する方法
SQLでグルーピングしてやや複雑な集計する方法 こういうことってやりたい時あるよなーと思いつつ いい方法が思い浮かばないので質問させてください。 日付ごとにタイプなどの条件により集計して、 1行で1日分のデータを並べて出力したいと思っています。 とりあえずイメージを提示します。 テーブルイメージ -------------------------- 日付 額 タイプ 20090101 5000 1 20090101 1000 1 20090101 3000 2 20090101 2000 2 20090101 -200 4 20090101 3000 4 20090101 2000 4 20090102 1000 1 20090102 1000 2 20090102 1000 2 20090102 -100 4 20090102 4000 4 20090102 3000 4 -------------------------- 出力イメージ ----------------------------------------------------- 日付 タイプ1 タイプ2 タイプ4(正) タイプ4(負) 20090101 6000 5000 5000 -200 20090102 2000 2000 7000 -100 ----------------------------------------------------- 複問い合わせを駆使すればできるような気もするのですが、 日付で集計しなければならないところが難しく感じています。 合計が0(というか対象データが無い場合)の部分は空白でもかまいません。 データベースはOracleですがOracleだけでしか使えない特殊な機能ではなく 普通のSQLの組み合わせで解決したいと思っています。 (でもOracle固有の機能で解決できるのならそれも教えていただきたいです) 基本的に1発のSQLで表形式で帰ってくるSQLの書き方をお願いします。 できれば、SQLそのものを記述していただきたいです。 何回かSQLを発行してあとでエクセルで…とか、他のPG言語でなんとかする という方法は今回はいりません。 よろしくお願いします。
- ベストアンサー
- Oracle
- こんなことできるSQL文はありますでしょうか?
お世話になります。 oracle9iとPostgreSQL7.3のいずれかで 実現したいのですが。 こんな並びのデータを no | resno | title ----+-------+------ 1 | 1 | あ 2 | 1 | い 3 | 1 | う 4 | 4 | え 5 | 1 | お 6 | 4 | か 7 | 7 | き 8 | 1 | く 9 | 9 | け こんな風に no | resno | title ----+-------+------ 9 | 9 | け 7 | 7 | き 8 | 1 | く 5 | 1 | お 3 | 1 | う 2 | 1 | い 1 | 1 | あ 6 | 4 | か 4 | 4 | え SQL文一発で並び替えることは できますでしょうか? resnoのグループごとをnoの降順で 表示したいのですが、、、 可能なのか不可能なのかもわかりません。 可能であればSQL文をご教授いただければ 幸甚です。 よろしくお願いします。
- 締切済み
- その他(データベース)
- SQLで1バイト、2バイト混在データでの切出し
お世話になります。 SQLで1バイト、2バイト混在データでの切出し方法を教えてください。 例:以下のような混在データから左から6バイトを切出したいです。 123:交通費 1234:通勤費 123:交通費 の場合は、「123:交」の形で6バイト きれいに切出せますが、 1234:通勤費 の場合は、「1234:通」の形で6バイトが「通」にかかってしまっています。 この場合、最後の「通」は無視して、「1234:」で出力されるように したいのです。 何か良い書き方を教えて下さい。 よろしくお願いいたします。
- ベストアンサー
- Visual Basic
- SQLローダーについて
カンマ区切りで""で囲まれたCSVファイルがあります。 例) "1","東京","おとこ","山田太郎","","","" このデータをOracle 9iデータベースにinsert、updateするプログラムをVBで書いたのですが パフォーマンスが悪いのでSQLローダーでやりたいと考えています。 更新テーブルはひとつなのですが、"東京"なら1、"大阪"なら2、"福岡"なら3というようにデータを突っ込む前に比較・変換する必要があります。 このような場合でも、SQLローダーって使えるんでしょうか? よろしくお願いします。
- ベストアンサー
- その他(データベース)
- Oracle SQL実行時間について
Oracle初心者です。 あるテーブル(レコード数:100万件程度)に対してSelectするSQLの実行時間を、Oracleのset timing on, set autotrace onlyで計測しました。 結果は1000ms程度だったのですが、 同じSQL文を実行するプログラム(java)を作成し、pstmt.executequery()してresultsetからデータをgetするまでの時間をログに出力させたところ、400ms程度でした。 プログラムの性能目標として、set timing on の値を設定していたため、実際の結果(javaプログラムが出力した処理時間)の評価に困っています。 差がでる原因をご教示いただけませんでしょうか。 宜しくお願いします。
- 締切済み
- Oracle
- SQLの追加でオラクルとアクセスの区別
Access97を使用しています。 元のデータベースが オラクルとアクセスの区別について モジュールでSQLを使って複数の項目を追加する場合 キーとなる項目にはデータがあるのですが 他の項目の中で空白の場合もあります。 その時 テキストボックスにデータが入っていない場合 オラクルであれば、空白の項目があっても データ自体は追加されるのですが アクセスであれば、1つでも空白があれば 追加されません。 仮に空白であれば、" "ブランクを入れて 処理するようにしています。 モジュールは同じ形式ですが オラクルとアクセスで上記のような違いはあるのでしょうか?
- ベストアンサー
- オフィス系ソフト
- Oracle10g、SQLコンパイルした日時一覧の出し方
お世話になります。 Oracle10gにて、PL/SQLのプロシージャをコンパイルした日時を一覧にしてテキストファイルに出力するか、コピペでエクセルか何かに貼り付けて、正しくコンパイルされたプログラムが動いていることの確認に使いたいのですが、プロシージャ毎のコンパイル日時(更新日時?)を出すようなSQL文をご存知でしたら教えてください。 よろしくお願いします。
- 締切済み
- SE・インフラ・Webエンジニア
お礼
回答ありがとうございます。 御礼遅くなりましてすみませんでした。 うまくいきました!