タグ

SQLに関するzomyのブックマーク (5)

  • データベースについてのそもそも論

    先月のはじめのほうで、「リレーショナルデータベースとの上手な付き合い方」というタイトルで、2回発表をした。ひとつは「まべ☆てっく Vol.1」であり、もうひとつは「Hacker Tackle(ハカタクル?)」である。 「リレーショナルデータベースの開発・運用に纏わるもろもろの話をして欲しい」というような内容の話をしてくれないかという同じような依頼を、ちょうど2日違いのイベントで頂いた。9/8のまべ☆てっくと、9/10のHacker Tackleである。そうなると必然的に話す内容も、同じようなものになってくる。同じ人物(=私)が話すのだから、テーマも同じで時期も同じであれば、内容が同じようなものになるのが自然である。もし違うものになってしまっているのであれば、片方はウソをついているということになるはずだ。今日は発表に使用したスライドを紹介しつつ、なぜデータベースを使うべきなのか(あるいは使う

    データベースについてのそもそも論
    zomy
    zomy 2016/10/05
    知り合いの若い子に読んでほしい | “通常のアプリケーション開発(特に小規模なもの)では、まず初めにRDBMSの利用を検討することを、私は強くオススメする” この結論は逆な気がした。
  • macでのOracleクライアントはSQL Developerがおすすめ - カタカタブログ

    普段はWindows仕事をしているので、Oracleクライアントツールはosqleditを使っているのだが、普段使いのmacではいいクライアントツールがないかなと思っていた。探してみたがあまりよさそうなのが見つからないので、Oracle純正のSQL Developerがmac版もあったので結局ここに落ち着いた。しばらく使っていなかったけど、よくよく見るとgit連携とかデータモデリングとか、便利そうな機能がいろいろありそうなので、ちょっと使ってみることにする。重さも軽量エディタレベルとはいかないが、手元のmac book airでも軽快に動いているレベルなので、問題なさそう。 macSQL Developer 4.0.3 をインストールする まず公式サイトからインストーラを入手する。以下のURLのmacのところから「sqldeveloper-4.0.3.16.84-macosx.app」

    macでのOracleクライアントはSQL Developerがおすすめ - カタカタブログ
    zomy
    zomy 2015/12/15
    接続タイプをTNSにすればよかったのか
  • PostgreSQLでテーブル定義を確認するには | hiro345

    PostgreSQLでテーブル定義を確認するにはいくつか方法があります。pg_dumpでスキーマ定義を取り出した方がはやいような気もしますが、ちょっとした確認をしたいときにはやはりSQLでやりたいところですよね。 リレーションの一覧を表示するには下記。 dbname=> \d リレーションの一覧 スキーマ | 名前 | 型 | 所有者 ----------+--------------+----------+--------- public | tablename | テーブル | user001 (1 行) SQLでは下記。 select relname as TABLE_NAME from pg_stat_user_tables; テーブルの定義を見たいときは下記。 select * from information_schema.columns where table_catalog

  • RDB - 実例で学ぶ、JOIN (NLJ) が遅くなる理屈と対処法 - Qiita

    "Nested Loop Joinしか取り上げて無いのにタイトルが大きすぎないか" と指摘を頂いたので、タイトルを修正しました。Merge JoinとHash Joinのことはまた今度書こうと思います。 「JOINは遅い」とよく言われます。特にRDBを使い始めて間がない内にそういう言説に触れた結果「JOIN=悪」という認識で固定化されてしまっている人も多いように感じています。 たしかに、JOINを含むようなSELECT文は、含まないものに比べて重たくなる傾向があることは事実です。また、質的に問い合わせたい内容が複雑で、対処することが難しいものも存在します。しかし、RDBの中で一体どういうことが起きているのかを知り、それに基いて対処すれば高速化できることも少なくないと考えています。 稿では、JOINの内部動作を解説した上で、Webサービスを作っているとよく出てくるJOIN SQLを例題に

    RDB - 実例で学ぶ、JOIN (NLJ) が遅くなる理屈と対処法 - Qiita
  • SQL講座 INNER JOINを使った表の結合

    副問い合わせの中に相関副問い合わせという方法がある。これは、主問い合わせの結果をチェックするというものである。 副問い合わせではWHERE句で指定されたSELECT文の実行結果を元に主問い合わせを実行した。 それに対して、相関副問い合わせでは主問い合わせの表の1行ごとに副問い合わせを実行する。 そして、EXISTSを指定された副問い合わせでは、主問い合わせで指定されたデータが存在すれば真を返し、存在しなければ偽を返す。真の行だけが抽出される。 まず、準備としてEXISTS述語を指定したSELECT文の実行結果が分かりやすいように商品表に次の2つの行を追加する。 EXISTS述語の記述形式は以下のとおりである。 << 記述形式 >> 《例題1》 売上のあった商品名を抽出する。売上のあった商品とは、売上明細に存在する商品のことである。つまり、商品表の商品のうち売上明細に存在する商品を抽出すれば

  • 1