タグ

SQLに関するnabeopのブックマーク (2)

  • データ分析で用いるSQLクエリの設計方法

    STEP2. アウトプットを実現するために必要なデータソースを書き出す アウトプットの整理ができたら、今度はインプットとなるデータソースの整理を行いましょう。 必要なデータソースは要件から読み解くことができます。 今回は「10代のユーザーの月間視聴数(性別 / 動画カテゴリごと)の推移をグラフで見たい」という要件です。 ここから、この分析に必要なエンティティ(実体)とその属性、集計値を抽出しましょう。 エンティティと属性 ユーザー 性別 年代 動画 カテゴリ 集計値 視聴数 これらのデータを管理するテーブルを、調査やヒアリングを実施して探します。 今回は以下のテーブルを使用することとします。 user:ユーザー登録に必須な入力項目を管理するテーブル user_profile:ユーザーが登録後に設定できる任意の入力項目を管理するテーブル video:ユーザーが投稿した動画を管理するテーブル

    データ分析で用いるSQLクエリの設計方法
  • MySQL の ORDER BY や GROUP BY に position を渡せるのを知って驚いたけど deprecated だった - id:onk のはてなブログ

    ほぼタイトルママなんだけど SELECT DATE(created_at), COUNT(1) FROM users GROUP BY 1; ってクエリを見つけて、 GROUP BY 1 ってなんぞ……?という話。 MySQL のドキュメント には [GROUP BY {col_name | expr | position}, ... [WITH ROLLUP]] [ORDER BY {col_name | expr | position} Columns selected for output can be referred to in ORDER BY and GROUP BY clauses using column names, column aliases, or column positions. Column positions are integers and begin

    MySQL の ORDER BY や GROUP BY に position を渡せるのを知って驚いたけど deprecated だった - id:onk のはてなブログ
    nabeop
    nabeop 2020/04/16
    これ、最初聞いた時はスッゲー気持ち悪くて何を言っているかわからなかったけど、ドキュメントを読んでなるほどなーと思った。deprecated なので知っていても使わないようにしよう。
  • 1