SQL練習問題の一覧です。 難易度にばらつきがありますので、基礎的なポイントを確認したい場合には、★のついていない基礎力チェックシリーズ(問25以降)から始めてみてください。自信のある方は力試しシリーズの問1から、実力を試してみたい方は★★★の問題へチャレンジしてみると力試しになるかと思います。 力試しシリーズ この問題が解ければあなたのSQL力は業務レベル!? 問題 番号 問題 難易度 備考
SQLBolt - Learn SQL - Introduction to SQL SQLをWeb上で学べる教材。記述したクエリの結果がリアルタイムに出力される。 以下、コードサンプルといくつかの演習問題に対する解答例。簡単すぎる問題は省略。 SQL Lesson 3: Queries with constraints (Pt. 2) -- 1. Find all the Toy Story movies SELECT * FROM movies where title like '%Toy Story%' ; -- 3. Find all the movies (and director) not directed by John Lasseter SELECT * FROM movies where director not like '%John Lasseter%' ; SQL R
プログラミング言語としてのSQLの特徴は、データを集合として取り扱うことです。データ分析の業務では、数万から数億レコードにものぼる大量のデータを、1行単位で確認することは非現実的です。そこで、大量のデータを集約して、少ない指標でデータ全体の特徴を捉える技術が重要となります。 1つの表(テーブル)を対象としたデータの集約や加工手法にはいろいろありますが、本項では書籍のChapter3-3「1つのテーブルに対する操作」から、3-3-3「縦持ちのデータを横持ちに変換する」を紹介します。 この項で登場するSQLは、MAX(CASE~)構文、string_agg関数、listagg関数、collect_list関数です。 SQLは行(レコード)に対して一度に処理を実行することが得意なため、データを保存する際には可能な限りデータを行に分割して保持すると、操作が容易になります。しかし、最終的な出力では、
How to make customer retention curves and cohort analysis the right way Whether you’re selling groceries, financial services, or gym memberships, successful recruitment of new customers is only truly successful if they return to buy from you again. The metric which reflects this is called retention, and the approach we use is customer retention analysis. It’s one of the key metrics that influences
This site is in read only mode. Please continue to browse, but replying, likes, and other actions are disabled for now. Cohorts are a good tool to review retention of users over a defined period of time. To create your own cohort report, you’ll need to define your cohort time frame, population, and activeness of users. Here is an example of a cohort query in PostgreSQL, step by step: We used the W
こちらの本をご恵贈いただきました。 ビッグデータ分析・活用のためのSQLレシピ 作者: 加嵜長門,田宮直人出版社/メーカー: マイナビ出版発売日: 2017/03/27メディア: Kindle版この商品を含むブログを見る 一般的なSQLの本というのはDB管理の一環としてのインフラエンジニア向けの技術書であることが多く、意外にもデータ分析を主目的としたSQLの使い方やクエリの工夫の仕方について書かれた本というのはあまり多くないんですよね。故に、多くのデータ分析者は難解なテーマを実現するクエリを書きたくても参考になる資料が乏しく、途方に暮れるわけです。僕もHive / Redshift / BigQueryのクエリを書きながら「こんな分析がしたいんだけど、それを実現できるクエリってないよなぁ。。。」と何度天を仰いだことか。 そんなところに突然降って湧いてきたのがこちらの新刊書。もう目次を見ただ
はじめに 今回は、複数(主に2つ)のdata.frameを結合する方法についてまとめます。 実際に分析する際に、1つのdata.frameだけで完結することはあんまりなく、マスタデータの結合など複数のdata.frameを組み合わせて使う必要がありますが、またまたdplyrを使えば簡単にできます。 結合と言っても、結構色んな方法があるので、分かりやすいようにチートシートからイメージ図を拝借してきました。 1つのdata.frameを操作する場合は、↓の記事を参照してください。 dplyrを使いこなす!基礎編 dplyrを使いこなす!Window関数編 JOINの種類 JOINの種類は大きく分けて以下の3つあります。 種類 説明
分析関数のLAGを最近知ったのでどんなものか紹介します。 適当な例を挙げるのが難しかったのですが、ありそうな例を考えてみました。 サンプルは、CentOS 6.3に付属のPostgreSQL 8.4で確認しています。最近のOracleでも動くと思います。MySQLは無理です。一応SQL標準なので他のDBMSでも実装されるかもしれません。 社員ごとの月ごとの売上が格納されたテーブルを用意します。テーブルは以下のDDLで作成します。 CREATE TABLE uriage_table( emp_no VARCHAR(3), year INTEGER, month INTEGER, uriage INTEGER, PRIMARY KEY(emp_no,year,month) ); このテーブルに適当な以下のデータを流し込みます。 INSERT INTO uriage_table VALUES('
EXTRACT(日時) 構文 extract_datetime::= 図「extract_datetime.gif」の説明 用途 EXTRACTは、日時式または期間式から、指定された日時フィールドの値を抽出して戻します。exprには、要求されたフィールドと互換性のある日時または期間データ型に評価される任意の式を指定できます。 YEARまたはMONTHが要求された場合、exprはデータ型DATE、TIMESTAMP、TIMESTAMP WITH TIME ZONE、TIMESTAMP WITH LOCAL TIME ZONEまたはINTERVAL YEAR TO MONTHの式に評価される必要があります。 DAYが要求された場合、exprはデータ型DATE、TIMESTAMP、TIMESTAMP WITH TIME ZONE、TIMESTAMP WITH LOCAL TIME ZONEまたは
In analyzing a business I commonly look at reports that have two lenses, one is by doing various cohort analysis. The other is that I look for Month over Month or Week over Week or some other X over X growth in terms of a percentage. This second form of looking at data is relevant when you’re in a SaaS business or essentially anythign that does recurring billing. In such a business focusing on you
以下のウェブサイトの解説を読むと、頭が論理的に整理されて、相関サブクエリの処理の流れを理解できます。 【 参考ウェブサイト1 】Hatena::Diary (2010/11/08) 「『相関サブクエリ』とは何かを理解して,複雑なSQLでも読めるようになろう」 【 参考ウェブサイト2 】TECHSCORE 「SQL 7章 サブクエリ」 【 参考ウェブサイト3 】CodeZine 「達人に学ぶSQL 相関サブクエリで行と行を比較する」 1.相関サブクエリとは、 ( 参考ウェブサイト1 より 抜粋 )※太字は、本記事 投稿者による サブクエリの内側と外側が,互いに関連しあっているのである。 サブクエリの中身を「関数」とみなした場合・・・_ __非相関サブクエリの場合は,一度実行すればよい。 相関サブクエリの場合は,毎回実行する必要がある。 ( 参考ウェブサイト2 より 抜粋 )※太字は、本記事
WITH句を使えば1つの副問い合わせ(SQL)を複数の箇所で使いまわすことができます。 例としてSQL 副問い合わせの基本を理解するで扱ったFROM句の副問い合わせのSQLをおさらいします。 SELECT MAX(T1.社員名) AS 社員名 ,SUM(T2.売上金額) AS 確定売上金額 ,SUM(T3.売上金額) AS 未確定売上金額 FROM 社員マスタ AS T1 LEFT JOIN ( SELECT * FROM 売上明細 S1 WHERE 状態区分 = 0 ) T2 ON T1.社員コード = T2.社員コード LEFT JOIN ( SELECT * FROM 売上明細 S1 WHERE 状態区分 = 1 ) T3 ON T1.社員コード = T3.社員コード GROUP BY T1.社員コード ※今回は学習のために上記のようなわかりやすいSQLを例にしましたが、SQL CA
こんにちは、みかみです。 はじめに やりたいこと Python コードと SQL 文を分離したい テーブル名や指定条件などを動的にしてクエリを発行したい Python から可変な SQL を投げるにはどんな方法(ライブラリ)があるのか知りたい 確認環境 OS:Windows10(Mac VMware Fusion) Python:3.6.0 PostgreSQL:9.6.1(環境変数に PGPASSWORD 設定済み) 確認用データ準備 id と name カラムを持つ test テーブルを作成し、データを insert しました。 postgres=# create table test(id int, name varchar(20)); CREATE TABLE postgres=# \d test テーブル "public.test" 列 | 型 | 修飾語 ------+----
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く