これは何「来年こそはSQL書けるようになるぞ」と思ってる方に向けた、1日1時間・3か月でSQLそこそこできるようになる学習方法について書いた記事です長文がつらつら書いてある本稿ですが、要するに言いたいことは
![非エンジニアのSQL学習ことはじめ 〜1日1時間・3か月でSQLがそこそこできるようになる勉強方法とおすすめ書籍〜](https://cdn-ak-scissors.b.st-hatena.com/image/square/88a20d223a849b6ac1eee668ec22502a3a946506/height=288;version=1;width=512/https%3A%2F%2Fassets.super.so%2Fdae0a686-9ea2-45bd-9a24-3b70ec8421cc%2Fimages%2F59590b77-fdb7-4290-a191-771719b93cf0.jpg)
Developers.IOをご覧の読者の皆様は「Looker(ルッカー)」というBIツール・サービスを御存知でしょうか。2012年01月に米国カリフォルニアにて設立された同名企業により開発された、データ探索とデータディスカバリー(発見)のための、次世代のデータプラットフォームです。 Looker - Business Intelligence and Big Data Analytics Software Lookerは世界各国の著名な企業・スタートアップなどで採用されており、また日本国内でも下記のようにメルカリやQuipperといった企業が採用・導入をした事で知名度が上がってきています。2019年の「Gartner Magic Quadrant」でも「Analytics and Business Intelligence Platforms」部門に掲載されています。 プロダクトのリリース
500ページを超える新刊『わかりみSQL』を、技術書典7 (2019-09-22) で出します。 SQL初心者はもちろんのこと、SQLに挫折した人こそ読んでもらいたい入門書になってます。 (好評だった『オブジェクト指向言語 解体新書』のSQL版だと思えばだいだいあってます。) 新刊の紹介はこのくらいにして、この記事では「初心者向けの本を書く上で気をつけたこと」と「500ページ執筆を支えるキーボード」の話をします。 初心者向けの本を書く上で気をつけたこと 『わかりみSQL』では、自分が初心者のときに「こういうふうに教えてくれれば良かったのに‥‥」と感じたことをつぎ込んでいます。ある意味、怨念のカタマリみたいな本ですねw 「こういうふうに教えてくれれば良かったのに‥‥」とはどういうことか、紹介しますね。 過程の説明を省略しない 初めと終わりだけを説明されても、あるいは問題点と解決方法だけを説明
開催した経緯非エンジニアメンバーの増加にともない対応が大変に弊社が提供する「フラミンゴ」はC2Cのサービスであり、かつ、実際にお客様同士がオフラインで対面するサービスです。このサービスの価値を高めてユーザーに喜んでいただくためには、カスタマーサポートをはじめとする非エンジニアのメンバーが不可欠です。 最近は、もともとCS担当のインターン生だったメンバーが契約社員として抜擢されたり、外部から中途採用で加わってくれたりして、力強いCSになってきていて嬉しいばかりです。 ただ、メンバーの充実は、嬉しいことばかりではなく、課題もありました。社内で非エンジニアであるビジネス側のメンバーが増えている今、 「xx月に登録した講師が、yy月までに〇〇しているかどうかを知りたい」 「xxにレッスンを受けた生徒の、リテンション、離脱率を知りたい」 というような要求が多く上がってくるようになりました。 SQLを
更新日: 2017年4月4日公開日: 2017年2月23日「データ」を武器に戦うマーケター、ディレクターはSQLを身につけるべき 「データ分析・企画という観点からよりよいものづくりをしたい」この思いを実現するために選んだのは、データ分析とデータをもとにサービスを企画するチームで働くこと。 京大でバイオテクノロジー分野を専攻し、新卒でグループウェアを開発している会社に入社後、株式会社ビズリーチへ。現在はプロダクトマネージャーとして活躍する荒金万琴氏に、非エンジニアがエンジニアスキルを身につける必要性などをインタビューしました。 なんとなくでは本質的な課題解決につながらない。データを用いたプロダクト改善に興味を抱く - まずは、荒金さんのご経験をお伺いできますでしょうか? 法人向けクラウドサービスを開発している会社に入社し、新規事業のマーケティングを担当していました。プロモーション用のWebサ
岡山にはオープンセミナー岡山と言う最高のイベントがあります。 okayama.open-seminar.org 昨日は id:t-wada さんや id:naoya さんの資料がホットエントリー入りしてました。 この登壇はそれと同じイベントになります。 その他の方も超豪華講師陣の中で、私が出来る精一杯の経験も踏まえたお話をさせていただきました。 speakerdeck.com この中で出て来る、データベースリファクタリングは本当に素晴らしい本です。 OracleベースなのですがMySQLだろうがPostgreSQLだろうが必ずためになる本です。 ですが、この本は既に廃刊になっており再販の予定もありません… 僕は後世に絶対必要な本の一つだと思っているので再販のためにも皆さんの要望の声を上げていただけるとうれしいです。 そしたらもしかしたら本が世に復活するかもしれません。 またSQLアンチパタ
最近は社内でSQLの啓蒙活動をしています。 幸いにも何人か興味を持ってもらったので、一通りSQLを学べそうな「SQL書き方ドリル」を会社で買ってもらったので、 SQLとあわせて啓蒙中のre:dashから、書籍付属のサンプルDBを使って、手を動かしながら勉強できるような環境を作ってみました。 改訂第3版 すらすらと手が動くようになる SQL書き方ドリル (WEB+DB PRESS plus) 作者: 羽生章洋,和田省二,菅井大輔出版社/メーカー: 技術評論社発売日: 2016/04/12メディア: 大型本この商品を含むブログを見る 前提 お使いの環境でVagrantが使えるようになっている環境を前提とします。 Macで動作確認していますが、Windows, Linuxでも動くと思います。 準備 re:dashをGitHubからcloneします。 $ git clone https://git
BdashというアプリケーションをElectronで作りました。 bdash-app/bdash: A simple business intelligence application. 以下からダウンロードしてインストールできます(現状まだMac版だけ)。 https://github.com/bdash-app/bdash/releases ざっくりとこんな感じのことができる。 SQLを書いて保存&実行できる 結果を元にグラフを書ける gistで共有できる 現状で対応しているデータソースはMySQL、PostgreSQL(Redshift含む)、BigQuery 仕事でRedshiftを使って分析SQLを書くことが増えて、手元ではJupyter Notebookを使ってたんだけど、SQL書いてグラフを書くだけの用途には若干オーバースペックでもうちょっと簡単にできるといいなと思ったのがき
SQL、書いてますか? こと大規模データ処理の分野においてはSQLはもはや標準インターフェイスであり、 分析やらバッチやらに関わっている皆様は日々大量のSQLクエリーを生産していることと思います。 そこでちょっと気になるのが、 SQLのコーディングスタイルってどうするのが一般的なんだっけ……? という点です。 イマドキはSQLなんてO/R mapperに吐かせることが多いからなのか、 それともコードを広い範囲で共有することがそもそもないからか、 SQLのコーディングスタイルについて見聞きすることは他のプログラミング言語に比べるとだいぶ少なく、 いまいち決定版と言えるスタイルがないなと感じています。 そんなわけで本日は、SQLのコーディングスタイルについての意識を活発化させるべく、 クックパッドでわたし(青木)が使っているコーディングスタイルから特徴的な点を紹介したいと思います。 特に、分析
※ Redash 最新版(1.x系)から、こちらの投稿内容で動作しない状況となっておりますのでご注意ください。 対策案が分かる方はコメントいただけるとありがたいです! re:dash は開発スピードが早く、つい先日は HighCharts から Plotly に置き換える PR がマージされプレリリースもされており、UI が大きく変わりそうで戦々恐々としているところです... この記事は、社内で現在運用している v0.8.3.b1192 での動作を前提とします。 re:dash は SQL をさっと書くだけでグラフ化/ダッシュボード化でき、ライトに分析できるのが売りですが、社内で BI プラットフォームとして本格運用するためには以下のような課題もクリアする必要がありました。 グラフの表示期間を指定したい(直近◯ヶ月や◯年前から、など見る人によって希望は様々) マクロデータだけでなく、特定の
前回まで、Amazon Redshiftの機能や特徴について説明を行いました。今回からは実践編として、Amazon Redshiftクラスタを起動するところから、データのロード、SQLの実行やクラスタの操作まで説明していきます。今回は、Redshiftクラスタの起動と、自分のマシンからのRedshiftクラスタへの接続までを説明します。 今回のチュートリアルでは、最小構成(XLタイプのシングルノード/2TB)のRedshiftクラスタを起動しますが、この場合一時間あたり$0.85の費用(2013/5/3時点)が発生し、EC2の最小インスタンスの料金に比べてかなり高くなります。試される場合には、完了後にRedshiftクラスタをシャットダウンさせるなど管理にご注意ください[1]。 なお、Amazon Redshiftを使用するには、AWSのアカウントを事前に準備しておく必要がありますが、ア
思いのほか前回のRailsプチ・デザインパターンの紹介に反応があったので、こういう小ネタも出していったほうがいいのかな、ということで第二弾。 ソーシャル系アプリだと、ユーザとユーザを関連付ける多対多のモデルがたくさんでてきます。たとえば、一般的なところではフォローとかブロックとか足あととか。さらにデーティングサイトになると、ウィンクだったり、Secret admirer(こっそりlikeするけど両思いだったらおめでとうって通知がくるってやつ)だったり、いろいろなモデルがこのパターンにあてはまります。 この場合、「AがBをフォローしている」「BがAをフォローしている」「AとBがお互いにフォローしている」という3つの状態があるわけですが、相互フォローの状態は「AがBをフォローし、かつBがAをフォローしている」と読み替えてSQLでも記述可能なので、以下ではシンプルに単方向のグラフで全てを扱うもの
RDBMSの知識不足を感じて以来、ここのところその勉強に力を入れている。学習方針は、 達人に学ぶDB設計 徹底指南書 初級者で終わりたくないあなたへ - kagamihogeのblog等の著書のミック氏が推奨している方法で、理論と実装の両面から進めている。俺の場合、後者は、Oracleで主にパフォーマンスの観点から基本的原則を確認することをやり、前者は、本書のような書籍を通して行っている。 本書は、コンピュータサイエンス初年度の講義の教科書を想定して作られている。そのため、コンパクトながらもトピックの網羅性、それになにより各章が独立していながらも本一冊を通してみると一貫性が保たれているのが素晴らしい。また、章から章への論理展開が極めて明快なので読みやすい。もっとも、これは俺がある程度の実務経験という下地と、まがりなりにもコンピュータサイエンスの学部経験があるからこそ、の部分もあるだろうけど
ツイート@nippondanji な師匠が特別寄稿したという記事を読んでいて本の存在は知りつつ、先日の devsumi では満席のため聴講できなかった SQL アンチパターン本の話を直接聞ける機会をもらえるということで、喜び勇んで参加してきました。 裏でやっていた #awssummit Day2 とギリギリまで天秤にかけていたのですが、あまりにも#awssummit の Day1 の印象が悪かったので、こちらに参加することにしました。 どうでもいいことですが 富士ソフトアキバビル 1F の案内が 「PB エンジニアのための勉強会」になっていたwさて、本勉強会の概要は以下のとおりで、 開催概要: DBエンジニアのための技術勉強会 主催: エンバカデロ・テクノロジーズ 日程: 2013年6月6日(木) 13:30〜16:15 (13:15 受付開始) 会場: 富士ソフト アキバプラザ 6階 セ
皆さん、お久しぶりです。長らくブログの更新が止まっていたのは、少し大きな仕事をしていたためです。ジョー・セルコ『プログラマのためのSQL 第4版』の翻訳。これに集中するため、ブログもやらずTwitterもやらず(こっちはちょっとやってしまった)頑張っておりました。 長かった。 本当に長かった。 原著が800ページ以上あるうえ内容も簡単ではないので、もともと楽な仕事とは思っていませんでしたが、いや大変でした。ですが無事今月刊行とあいなりました。すでにAmazonはじめオンラインショップでも予約受付を開始しています。あらかじめ言っておきますが「表紙のおっさん誰?」という質問は私にはしないように。私も答えられないので(笑)。 さて、本書の内容を紹介する代わりに、少し長くなりますが訳者前書きを引用します。購入するか判断の参考にしていただければと思います。なお、実行環境としては前書きでも書いています
下記のテーブルから各IDごとの最新2件のデータを一回のSQLで抽出したいのですが UNIONを使えばできました。 UNIONは実行結果をひとつにまとめてるだけなので結局2回SQLを実行していますよね? UNIONを使わずに1回の実行で抽出は可能でしょうか。 またもっとスマートな抽出方法がありましたら教えてください。 元テーブル:TABLE_A ID|Address | create_date 1 | 東京 | 2010-03-01 2 | 福岡 | 2010-03-02 1 | 東京 | 2010-03-03 1 | 東京 | 2010-03-04 2 | 福岡 | 2010-02-05 1 | 東京 | 2010-03-06 1 | 東京 | 2010-03-07 2 | 福岡 | 2010-03-08 1 | 東京 | 2010-03-09 1 | 東京 | 2010-03-10 2
トップN分析、上位 n レコード、 n〜m レコードの取得 SELECT 文 にて条件を伴う上位の n レコードを取得したい場合には ROWNUM によるインラインビューを使用してネストした問い合わせをインライン化するか ROW_NUMBER 分析関数 を使用する。 FETCH FIRST / FETCH NEXT による TOP n 件抽出 SELECT NO FROM ROWNUM_TEST ORDER BY NO -- OFFSET 0 ROW / OFFSET 0 ROWS FETCH FIRST 5 ROWS ONLY ; "FETCH FIRST ROW" と行数を省略した場合には最初の 1 行が抽出される。 ※ FETCH FIRST n ROWs の n に 0以下が設定された場合には 1件も抽出されない。 ROW_NUMBER 分析関数による TOP n 件抽出 ROW_
ちなみに、PostgreSQL8で確認しましたが、他のRDBでは確認していません。このSQLでは同点の場合にID順で上位を決めています。同点は全て出すというルールになると試していないですが、in句の中のサブクエリのwhere句にポイント上位2件を取得して、ポイント同士でくっつける必要があるでしょう。(明日でも試してみようかな・・・) 投稿日時 : 2007年6月7日 22:10 Feedback # re: グループ単位で上位n件を取得するSQL 2007/07/02 17:49 じゃんぬねっと 役立っているようですね。 http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=39369&forum=26 # re: グループ単位で上位n件を取得するSQL 2007/07/02 19:22 かつのり びっくりしたw # ???????
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く