タグ

sqlに関するmoerrariのブックマーク (18)

  • SQLで特定の項目の重複のみを排除した全項目を取得する方法

    私は仕事上でデータベースを扱っていて、タイトルのような処理を行う必要があるのですが、いかんせん方法がわからずネット上を検索しても同様だったためここで質問させていただきます。 質問点を簡単に説明いたしますと、 たとえばAというテーブルがあって、 項目名1 項目名2 項目名3 項目名4 A    あ    ア    亜 A    い    ア    以 A    う    ア    宇 B    え    イ    江 B    お    イ    尾 上のような構造になっている場合に「項目名1」について重複している項目を排除し、結果として 項目名1 項目名2 項目名3 項目名4 A    あ    ア    亜 B    え    イ    江 上のようなデータを取得したいのです。 この時に、Aの重複を排除して取得するレコードは1~3行目のどれでもよいです。 また、データを取得する際には必ず

    SQLで特定の項目の重複のみを排除した全項目を取得する方法
    moerrari
    moerrari 2015/03/31
    No.2の回答のように、重複値をまとめたいフィールドを全てGROUP BYで指定しその他のフィールドはレコードが1つだけ抽出されるようにMinやFirst関数で囲ってやればよい。
  • 逆引きSQL構文集

    逆引きSQL構文集はやりたいことから,その方法を調べられるSQLの逆引きのリファレンスです. すべての項目にサンプルを用意してありますのでよろしければ参考にしてください. ブラウザの検索機能(Ctrl + F)を使用すると効率的にSQLを調べることができます. ホームページは現在精力的に作成中です

  • SQLでorder byとgroup byを併用する時の書き方 - まんとるぽっと

    珍しくSQL書いてたら詰まったのでメモしておきます。 やりたいこと どばーっとデータが貯まっているテーブルがあったとして。例えば色んなユーザのアクセスログが貯まっているテーブルを想定します。その中から各ユーザの最新アクセス情報を取りたい時にどうするか。 「dateでorder byしてから、group byすればいいんじゃないの?」と思ってたんすけど、どうやらこの2つは併用すると先にgroup byされてその結果がorder byされるそうな。そういう仕様らしい…。以下の記事が参考になりました。 Mysqlのサブクエリとgroup、orderの優先度 – Life order byとgroup byを併用する時のサブクエリ じゃあ、サブクエリでdateでorder byした結果に対してgroup byしたらええやんと言う話になりまして、具体的にはこんな感じになりました。内容は変数名を見て察

    SQLでorder byとgroup byを併用する時の書き方 - まんとるぽっと
    moerrari
    moerrari 2015/02/23
    "order by とgroup byを併用すると先にgroup byされてその結果がorder byされる"
  • MySQLでGROUP BYとORDER BYを同時に使用する場合に気をつけたいこと | 日記の間 | あかつきのお宿

    今さらな話ではあるんですが、前にも一度同じ過ちを犯したことがあるので、ここでちゃんと自分を懲らしめておきたいと思います。 前提条件 例えば、データベースにこんなデータが入っているとする。 +----+-----------+--------+------+---------------------+ | id | author_id | title | text | created | +----+-----------+--------+----------------------------+ | 1 | 1 | title1 | text | 2012-10-01 12:00:00 | | 2 | 2 | title2 | text | 2012-10-02 12:00:00 | | 3 | 1 | title3 | text | 2012-10-03 12:00:00 | | 4

    MySQLでGROUP BYとORDER BYを同時に使用する場合に気をつけたいこと | 日記の間 | あかつきのお宿
    moerrari
    moerrari 2015/02/23
    "ORDER BY => GROUP BYの順番でSQL文を書くと、エラーになる"
  • エロゲーマーのためのSQL -エロゲーマーのためのSQL-

    SQLはデータベースからデータを抽出したりするための言語です。 この文書は、ErogameScapeのデータベースからSELECTを使って自由自在にデータを取得できるようになることを目標にします。 エロゲーをやりはじめる大学生くらいのときに、大学の講義でデータベースを学んで、退屈だなーと思った時に、ErogameScapeでSQLを学ぶことで、少しでもSQLに興味を持って、自身でデータを加工することを学習して頂けると幸いです。 ※私の大学のリレーショナルデータベースの授業では、自分の身の回りの何かをER図に落とし込んで、DBを設計し、PostgreSQLに実装し、実際にデータを入力してSELECTしてみるところまでをやりました。 ER図という概念を学んだとき「ああ、これは面白い」と思いました。 先生はこう言ったのです。 「ER図に落とし込むと、思いもよらなかったことが分かる。」と。 当時、

    moerrari
    moerrari 2014/01/03
    sqlについて実践的に学ぶ一つの方法
  • RDBMSに関する典型的な誤解が絶えないという現実

    新入社員必読、データベースの基を理解しよう - データベースはなぜ必要なの?:ITproという記事に対するブクマで次のようなIDコールが来た。(現在はコメント返しへのお礼が入っているので、文字数制限のためオリジナルのコメントは少し切り詰められている。) "リレーショナルデータベースはすべてのデータを2次元の表形式で表現"こういうのもリレーションが2次元構造という誤解の一種なんだろうか。id:nippondanjiさんが書いてたような。 さて、この疑問に対する正解は如何なるものだろうか? つい先日「7つのデータベース 7つの世界」の書評で書いたばかりだが・・・ 言うまでもなくその通りである。 リレーションが2次元的な構造を持っているというのは典型的な誤解だ。(ちなみにリレーションの次元は属性の数に等しい。n個の属性があるリレーションはn次元。)リレーショナルモデルについてちゃんと学習してい

    RDBMSに関する典型的な誤解が絶えないという現実
    moerrari
    moerrari 2013/04/23
    難しい。誰か要点をまとめて欲しい。
  • サービス終了のお知らせ

    平素より「PHPプロ!」をご愛顧いただき、誠にありがとうございます。 2006年より運営してまいりました「PHPプロ!」ですが、サービスの利用状況を鑑みまして、2018年9月25日(火曜日)をもちましてサービスを終了させていただくことになりました。 サービス終了に伴いまして、2018年8月28日(火曜日)を持ちまして、新規会員登録ならびにQ&A掲示板への新たな質問、回答の投稿を停止させていただきます。 なお、ご登録いただいた皆様の個人情報につきましては、サービス終了後、弊社が責任をもって消去いたします。 これまで多くの皆様にご利用をいただきまして、誠にありがとうございました。 サービス終了に伴い、皆様にはご不便をおかけいたしますこと、心よりお詫び申し上げます。 件に関するお問い合わせはこちらよりお願いいたします。

    moerrari
    moerrari 2013/04/14
    sqlの結果をページ分割して表示するにはlimit句を使用する
  • 文字列の比較 likeとワイルドカード

    SQLでは、いままで見てきたような、与えられた文字列と完全に一致する文字列を含む 行を検索するだけでなく、「技術」という言葉がつく出版社を調べたいとか、「データ ベース」を書名に含むがあるかどうかを調べたいといった検索が可能である。 多くの読者は、Ms-dosやUNIXでのファイル名の指定に、「ワイルドカード」を使った 経験があることと思うが、SQLでも、同じ様な考え方を採用している。ただ、注意して欲 しいのは、SQLでの「ワイルドカード」文字は、次にみるように、'%'と'_'であり、 Ms-dosやUNIXのそれとは異なっていることである。 % 任意の長さ(ゼロを含む)の文字列 _ 任意の1文字 また、「ワイルドカード」を使うためには、where句の中で、likeを用いる。 次の例での、'データベース後ろに何文字かが続く文字列」という意味になり、「データベース」という言葉で始ま る書名

    moerrari
    moerrari 2013/04/14
    SQLのワイルドカードは「%」
  • リレーショナル・データベースの世界

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

    moerrari
    moerrari 2013/04/07
    教科書と呼ぶに相応しそうなサイト。
  • サービス終了のお知らせ

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

    moerrari
    moerrari 2013/04/07
    コードの見やすい書き方
  • データベースが遅くなった原因を自動的にスキャンして分析するフリーソフト「Trace Analyzer for SQL Server」

    Windows XP SP1/VistaとWindows Server 2003/2008の32ビットおよび64ビット版で動作し、SQL Server 2005/2008のデータベースを分析することで速度が遅くなってしまった原因を見つけてくれるのがこのフリーソフト「Trace Analyzer for SQL Server」です。インストールして起動させるには他に「.Net Framework 3.5 SP1」と「Microsoft SQL Server Compact 3.5 SP1」も必要です。 数百あるいは数千もあるファイルイベントをトレースしたり、サーバに過負荷をかけているバッチがどれが特定したりするわずらわしさから解放してくれるはずです。 ダウンロードは以下から。 DBSophic | Trace Analyzer for SQL Server http://www.dbsoph

    データベースが遅くなった原因を自動的にスキャンして分析するフリーソフト「Trace Analyzer for SQL Server」
    moerrari
    moerrari 2009/07/31
  • MySQL AB :: MySQL 4.1 リファレンスマニュアル :: 6 MySQL SQL言語リファレンス

    MySQL は非常に複雑でありながら、直感的に使用できる覚えやすい SQL インタフェースです。この章では、MySQL を効率的かつ効果的に使用するために知っておく必要がある、さまざまなコマンド、データ型、および関数について説明します。また、この章から、MySQL に組み込まれているすべての機能について参照することもできます。多岐にわたるインデックスの中からそれぞれの内容を参照することによって、この章を効果的に使用することができます。 This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up t

  • 技術メモ トップページ

    このページはソフトの仕事をしている中で、プログラミングや環境設定などで出くわしたことについて、「これは他の人にとっても役に立つんじゃないか?」ということを集めたものです。 まだ作り始めたばかりなんで(2002年10月作成開始)、内容はあまりありませんがだんだんと充実していくと思います(そうなるといいなあ)。 暇つぶしにでもこのサイトをふらふらして見てください。何かのお役に立てば幸いです。 RDFを入れてみましたが、更新頻度高くないのであまり意味無いっすね。 それと「なかのひと」に対応してみました。 2002年10月から、会社内勝手サイトとしてここ以下のページを作成してきました。 しかしSSIMなどセキュリティ云々が厳しくなってきたおり、私が普段は客先に常駐していて社外にいることもあって、 ・社外からFTPアクセスでのページ更新が出来なくなった ・そのため更新の度に、一々社内の担当者に依頼し

    moerrari
    moerrari 2007/12/29
    文字コードの変更についてなど参考になりそう
  • csvのインポートで忘れがちなこと - kenmituoの日記

    お手軽なイメージがあったけど、実は面倒なCSVだったりする。 文字コードをそろえなければならない(エディタの機能が重要) CSVの最後のカラムは空白であってはならない datetimeはNULLだめ 空白なときは「全角スペース」を入れておく 当たり前なんだろーけど、忘れちまう。 テキストエディタは「EmEditor」を使っていた。UTF-8形式での保存がなんだか変だ。MkEditorを使ったら文字化けなんて起こらない。何がいけないんだろうか?古いのかな? MySQL側の文字セットを変更というか、明示する mysql> set character set utf8; CSVファイルをutf-8、CR+LFで保存する

    csvのインポートで忘れがちなこと - kenmituoの日記
    moerrari
    moerrari 2007/12/27
    日本語データベースはUTF8に変換しないと読めない
  • MySQL 3.2x - オンラインマニュアル MySQL 3.2xデータベースサーバーのインストール

    MySQL 3.2xは雷電HTTPDに必須ではありませんが、掲示板等の多くのソフトには必須とも言えるものです。インターネット上で公開されている多くの無料WEBソフトを利用するためにもインストールをおすすめします。

    moerrari
    moerrari 2007/12/27
    インストール方法
  • MySQLデータベースサーバーのインストール Windows篇

    moerrari
    moerrari 2007/12/16
    データベースサーバでないと一度に同じファイルに多数のユーザがアクセスすることはできない。
  • 忙しいあなたのためのSQL入門---目次

    この連載は,これからデータベース・システムの開発を始める人,あるいは実際には開発にかかわらなくても,基礎知識の一つとしてデータベース・システム関連の用語の意味を知りたい人を対象として,短期間でSQLとデータベースの全体像を把握していただくことを目的としたものです。 第1回(1) SQLを学ぶ前に(1) 第1回(2) SQLを学ぶ前に(2)SQLがなぜ必要なのか? 第1回(3) SQLを学ぶ前に(3)リレーショナル・データベースとは 第2回(1) SQLの基礎(1)SQLの基構文 第2回(2) SQLの基礎(2)SQLのデータ型はDBMSに依存する 第3回(1) SELECT文を制する者はSQLを制す(1)SELECT文を使いこなそう 第3回(2) SELECT文を制する者はSQLを制す(2)論理演算子AND,OR,NOT 第4回(1) 挿入,更新,削除,及びSQLの関数(1)データの挿入

    忙しいあなたのためのSQL入門---目次
    moerrari
    moerrari 2007/12/08
  • 特集:基礎から理解するデータベースのしくみ - 特集:基礎から理解するデータベースのしくみ:ITpro

    「データベースはブラックボックス。どんなSQL文を投げたらどんな結果が返ってくるかさえ知っていればよい」---そう思っている人も多いかもしれません。 しかし,物のソフトウエア・エンジニアを目指すのであれば,データベースが動く仕組みを学ぶことは避けて通れません。パフォーマンスなどに問題が生じたときどこから手を付けていいのか皆目見当がつかない,といった事態に陥りかねません。 市販のRDBMSの内部はかなり複雑ですが,基的な部分を理解するのはそれほど難しくありません。この特集でデータベースの動く仕組みを理解してください。 イントロ ●ブラックボックスのままでいいの? 基礎から理解するデータベースのしくみ(1) Part1 ●SQL文はどのように実行されるのか 基礎から理解するデータベースのしくみ(2) 基礎から理解するデータベースのしくみ(3) 基礎から理解するデータベースのしくみ(4) 基

    特集:基礎から理解するデータベースのしくみ - 特集:基礎から理解するデータベースのしくみ:ITpro
    moerrari
    moerrari 2007/11/24
  • 1