ブログ記事881件
よく使う統計情報操作に関するコマンドやSQLのまとめ。大抵はこれで事足りるはず。細かい設定がしたければ、マニュアルをみる。よく使うOracleSQL/コマンドまとめOracleDBの統計情報(オプティマイズ統計)とはOracleDBは、SQLを実行する際に、実行計画を複数作成し、最もコストの低いデータアクセス方法でSQLを実行する。この実行計画を作成するためには、各テーブル、カラムのデータ量、データの特性、偏りなどの情報が必要である。これをDBの統計情報という。DB
今月から仕事内容が変わり、本格的にSQLを使うことになりました。SQLは情報処理試験で勉強したものの、業務でしっかり使うのは初めての経験。ので、しばらくは、知らなかったSQLを1つずつまとめていきたいと思います。今日はIN句とEXISTS句について。※OracleDatabase19cで確認しています。データベースによって異なる部分などあるかもしれないため、自己責任でお読みください。もくじ1.IN句(役割と基本の使用方法/応用編)2.EXISTS句(役割と基本の使
このセクションでは、ゼロからSSDTを使ってSSISパッケージを作ってみます。例として、州と市ごとに売上の予測を入力するフォームを作ります。州と市のデータはAdventureWorksデータベースから抽出し、変換先はExcelファイルです。Excelフォームが出来たあと、売上予測の額を入力し、そのデータを今度はまたAdventureWorksのデータベースに送り返します。大まかに分けて次のステップをカバーします。新たなSSISパッケージを作成とそのプロパティの説明変換元と変換先の接続マ
1つのSQLをOracleDBの機能で並列処理する方法。Oracle10g以降対応。さらに細かく指定したい場合は、マニュアルをみる。よく使うOracleSQL/コマンドまとめSQLのパラレル実行について通常SQLの実行は1プロセスで行われるが、これを複数のセッションで実行させることが可能。DB全体をパラレル処理に設定できるが、OLAP専用DB以外ではほぼ使用しない。パラレル問合せ、パラレルDML、パラレルDDLをパラレル実行することができる。<実行条件>・PARALLEL
JavaScriptでMicrosoftSQLServerを使う方法JavaScriptでMicrosoftSQLServer(MSSQL)を使う方法メモです。ライブラリはMicrosoftも推奨しているtediousを使い、あまり凝ったことはせず、必要最低限の機能に絞ってまとめました。tediosはコールバックスタイルのライブラリなので…
先日からSQLの記事を書いていますが、今回も同じくSQLの記事です。環境はOracle19c。もくじ1.DECODE関数とは2.引数の注意点3.参考:類似関数1.DECODE関数とは取得したデータ値を、別の値に置き換えて返却するための関数。構文は以下の通り。DECODE(列名,値A,値Aの置換後の値,値B,値Bの置換後の値,…,デフォルト値)例えば以下のように用いる。SELECTDECODE(COLUMN_A,'りんご','appl
仕事の都合上、毎日使っているDBの負荷・状況などを確認しているわけですが、日頃から気になっている観点以外のもの(急激な負荷や例外的なLoadAVERAGEの上昇)が話題になります。で、何かしら結果が出ているということは何か要因がある、というのが常なので、その要因を探ることが大変です。(複数の要因があることが基本なので、そうなってくるともう・・・)今回はOracleデータベースでテーブルロックが発生してしまった場合、負荷が上がるのでその原因を調べるためのSQLです。テーブルロック
既にあちこちに同様の記事はあるのですが、JavaでDB接続を行い、その過程を記してみたいと思います。環境はWindows10です。もくじ1.今回やること2.データベースの前準備(テスト用ユーザー、DB、テーブル作成)3.JDBCドライバーのインストール・JDBCドライバーとは・PostgreSQL用のJDBCドライバのインストール4.挙動確認・確認用ソースコード・結果確認5.まとめ1.今回やること・PostgreSQLでユーザー、データベース、テーブ
With句を複数回使ってみるの巻WithaliceAs(SELECTf1+'_'+f2ASgrp_key,SUM(f3*f4)ASaggFROMt_fooGROUPBYf1+'_'+f2),bobAS--ここでWithと書かず、カンマで続きを。(SELECTf1+'_'+f2ASgrp_key,*FROMt_foo)S
再びSQL関連の記事です(`・ω・´)職場で、OracleとPostgreSQLのソースを比較することがありました。そこでROWNUM関数/LIMIT関数とORDERBY句の併用方法について、DBで違いがあったので、備忘録として記事にしておこうと思います('ω')ノORDERBY句の説明は以前記事にしているので、良ければご覧くださいー!『【SQL】ORDERBYの活用いろいろ』再びSQLの勉強シリーズに戻ります(`・ω・´)今日はORDERBY句。役割は知っているけ
データベースエンジニアととして仕事をしている以上、必ず必要になってくるのがデータベースのER図。もちろん、現職のデータベースのER図はキチンと?あるにはあるので、個別で作成する必要はないのですが、そこそこ大きなデータベースを扱っているため、テーブル・カラムだけでもかなりの量になっています。それらを全て図に表すと自分が必要なテーブルってどこだ・・とか、相関関係が見えなくなってきて、まず読み解くだけで時間がかかる・・・(都度依頼があるテーブルが違うかったり、条件が複雑だったりする)ということが
今日は、データベースのカーソルについて勉強していきます。試行はOracle19cにて行っています。もくじ1.カーソルとは2.カーソルの基本の使い方3.カーソル利用時に注意すべきこと1.カーソルとはDB検索結果レコードを1行ずつ処理するためのしくみ。DBデータは、通常は一括して処理することが多い。一括してデータを取得したり、WHEREで示した条件にあう全レコードをUPDATEしたり、といったイメージである。が、時には取得してきた複数のレコードに対して、それぞれの処理
SQLチューニングを行っていると、Viewに対してヒントを指定したくなることがある。ある用途のためにViewの定義にヒント句を書いてしまうと、別の用途でViewを使用した時に良くない実行結果になってしまうことがあるため推奨されない。ViewへのヒントはTableのときと同じようには記述できないことに注意する。よく使うOracleSQL/コマンドまとめ方法1:グローバルヒントを使うこれは単一表に対するヒントを指定したい場合(INDEXなど1つの表のみ指定するもの)、最も
突破ファイルおもしろいよね。さてさて、タイトルの通り、postgresqlのプレースホルダ、つまりバインドできるパラメータの数には上限がある。32767、らしい。覚えてらんね。大体32000くらいとしか認識してないし、そんな認識で十分。で、そんなクエリ作る方が悪いとか、そんな検索許容させちゃ駄目だとか、色々思うところはあったとしても、メンバーとして参画したら、客からの要望は既に固まっているし、なんなら設計終わっている。DBのテーブル構造だってもう決まっている。何が