タグ

SQLに関するeiji8pouのブックマーク (6)

  • データベースの内部動作を知る

    SQLのプログラミングは奥が深い。特にパフォーマンスの観点から、そう言えるだろう。 みなさんご承知の通り、同じ結果を出すプログラムでも、SQLの書き方次第で処理時間に何倍もの差が生じ得る。効率の悪いSQLを書いてしまう原因は、多くの場合、リレーショナルデータベースの内部動作やアプリケーションに関する理解不足である。両者をよく知った上で最適なSQLを書けるようになることは、システムエンジニアとしての重要なスキルの一つである。 特集『基礎から理解するデータベースのしくみ』では、リレーショナルデータベースの内部動作について、基的な部分を分かりやすく解説している。SQLプログラミングに役立つことはもちろん、SQLチューニングやデータベース設計のための基礎知識としても不可欠だ。 イントロダクション ブラックボックスのままでいいの? Part 1:SQL文はどのように実行されるのか SQL実行までの

    データベースの内部動作を知る
  • [悪徳商法?支店]: auto_incrementの値を1に戻す方法

    データベースで、auto_incrementなIDをリセットする方法について調べていたら、MySQLについては、以下のような方法があった(参考)。 MySQLの場合 alter table テーブル名 auto_increment=1; SQLiteについても、あってるのかどうか知らないけど、以下の方法でリセット出来た。 SQLiteの場合 update sqlite_sequence set seq=1 where name='テーブル名'; ActiveRecordを拡張するとしたら、以下のような感じかな? RAILS_ROOT/vendor/plugins/auto_increment/init.rb class ActiveRecord::ConnectionAdapters::SQLiteAdapter def set_auto_increment( table_name, va

  • Kazuho@Cybozu Labs: Perl で埋め込み SQL を使って楽をする話

    « Japanize for IE バージョンアップのおしらせ | メイン | Filter::SQL を使って掲示板を書いてみました » 2008年04月16日 Perl で埋め込み SQL を使って楽をする話 DSL (ドメイン固有言語) は、プログラム開発の生産性を向上させる有力な手段です。そして、よく使われる DSL の代表例が正規表現と SQL だと思うのですが、前者に比して後者を嫌いな人が多いようです。なぜだろうと思ってつぶやいたところ、「SQL はリテラルじゃないから!」という答えが tokuhirom さんから返ってきました。そういえば例えば Pro*C のように C で Embedded SQL というのは良く聞く話なのに、Perl では同様の例がないような感じだったので、作ってみました。Perl で埋め込み SQL を実現するソースフィルター Filter::SQL

  • CodeZine:HAVING句の力(HAVING(集計), HAVING句, 関係除算, HAVING, SQL)

    はじめに SQLというのは変わった言語です。こういう印象は人によって差があると思いますが、おそらく最初に手続き型言語を学んだ正統派のプログラマやSEほど強くそう感じると思います。 SQLに違和感を感じる理由は、いくつか考えられます。第一に、SQLが「集合指向」という発想に基づいて設計された言語で、この設計方針を持つ言語が少ないことです。そして第二に、それに劣らず大きいのが、最初に学んだ言語のスキーマ(概念の枠組み)が心理的モデルとして固定され、それを通して世界を見るようになるため、異なるスキーマを持つ言語の理解が妨げられることです。 稿では、HAVING句のさまざまな応用方法を紹介していきますが、その際、手続き型言語とSQLの考え方を比較します。それによって、私たちが手続き型言語で身に付けた無意識の心理的モデルを自覚し、集合指向という発想に感じる違和感を軽減したいと考えています。 今回は

    eiji8pou
    eiji8pou 2007/12/30
    歯抜けを探すSQL文だが、エレガントかも知れんが実際にやってみると死ぬほど時間がかかった。
  • SQLで木と階層構造のデータを扱う――入れ子集合モデル

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    eiji8pou
    eiji8pou 2007/09/03
  • サブクエリー Postgresqlメモ

    Postgresqlのメモ。サブクエリーについて このコンテンツは移動しました。お手数ですが以下リンクよりお進みください サブクエリー Postgresqlメモ

    eiji8pou
    eiji8pou 2006/08/28
  • 1