タグ

データベースとmysqlに関するfumix1223のブックマーク (3)

  • はじめての MySQL で100万件のデータを管理する時に行ったチューニングまとめ

    MySQL の勉強をせずにフレームワーク等で SQL を書かずに Web サイトを構築していました。データ数も2万件程度でしたので、そこまで困ることはありませんでしたが、今回100万弱の商品データを扱う機会ができたので、MySQL のチューニングや発行する SQL について見直す機会がありました。 この記事では MySQL を高速化するのに行った対策など勉強したものを自分用にメモしておきました。 条件式で比較するカラムにインデックスを使用して高速化 商品コードで存在しない商品を見つけて、商品をDBに登録するという処理を行っている場合、4万件超えたころから処理に2秒以上かかるようになってきます。12万件超えた頃には10秒程度かかるようになってしまいましたが、商品コードのフィールドに対してカラムインデックスを貼ることで0.2秒に短縮することができました。 MySQL のリファレンスにも以下のよ

  • PHP Dream : PHP 検索システムを作る

    検索システムを作りましょう。, 巷でよく見かける、検索条件を入力して、条件にヒットしたデータが表示されるものです。 以下の内容で、それぞれのファイルを作成してください。 search.mysql(17行) input.html(52行) search.php(77行) データベース名[sample]を作成し、search.mysqlを実行させてください。 例: mysql sample< search.mysql テーブルは[search]という名前で次のような項目が作成されます。 試してみる 今回はファイルをいくつかに分けています。 上手に分けると、ロジックとデザインの部分を分離することができます。 これにより、ロジックはプログラマが、デザインはデザイナが担当する、というように分業が可能になります。 (実際には完全に分離することは難しいですが。) データベース名は[bbs]、テーブルも[

  • MySQL あいまい検索する。

    格的なプログラミングを学びたい場合は Java初心者入門講座 を次のステップとしてご活用ください。 ・Web系のプログラミングを学びたい場合は PHP初心者入門講座 を次のステップとしてご活用ください。 データベースで文字を抽出条件に使う場合は少し複雑です。数字は明確に指定できますが、文字には曖昧さがあるからです。 例えば前回の「PREF_NAME = '東京都'」という指定の仕方だと検索できましたが、「PREF_NAME = '東京'」では一致しません。「=」(イコール)の場合は完全に一致しなければならないからです。しかしこれではあまりにも厳密すぎて利用し難いですね。 そこで文字列を抽出条件にする場合は LIKE演算子とワイルドカードを使い「あいまい検索」にすることが多いです。 *MySQLとAccessでは使えるワイルドカードが異なりますが基は同じです。 今回MySQLに接続する

    MySQL あいまい検索する。
  • 1