グループ合同の新卒研修で行った SQL 入門向けの解説 + ワークショップです。 基本的な部分の解説のみで、一部触れていない構文もございます。 ご了承ください。 KKK: 価格, TNK: 単価, MST: マスタ, IDX: インデックス # URL HomePage: https…
概要 全般 推奨 非推奨 命名規則 通則 表 列 別名、相関名 ストアド・プロシージャ 統一的接尾辞 問合せ文 予約語 空白類 インデント 望ましい形式 Create文 データ型の選択 デフォルト値の指定 制約とキー 非推奨設計 付録 予約語リファレンス SQLスタイルガイド(日本語訳) 日本語訳について 日本語訳は誤訳や原文の最新版に追随していない恐れがあります。誤訳や改善点があれば、GitHubのissueまたはpull requestを使用するか、Twitterでお知らせください。 翻訳: 久利史之 @nkuritw 概要 このガイドラインは利用の他、forkしたり、自分自身のものに改変したりすることができます。ここで大事なのはスタイルを選択しそれを踏襲することです。変更の提案やバグの修正にはGitHubのissueまたはpull requestを使用してください。 このガイドライン
こんにちは、データ分析部の石塚です。 Gunosyではエンジニア以外の職種でもSQLを叩いて自らデータを集計・分析するという習慣と全社員が各サービスのログ*1に触ることができる環境があります。 例えば、ユーザー獲得を担っているプロモーションチームはエンジニアが0名のチームなのですが、実際にSQLを叩いています。 それによって、自分たちの獲得したユーザーはどのような行動をしているのかを確認したり、分析することができています。 これはGunosyのみの事例ではなく、AWSのRedshiftやAthena、GCPのBigQueryが台頭してきたおかげで、どの会社も低コストにログをSQLで集計・分析できる基盤が整ってきています。 個人的にはアプリやウェブの業界で働くマーケターにはSQLは必須の知識と言える時代になってきたと感じています。 そこで今回は特別プログラミングなどの経験が無い人でも、SQL
Photo by Brent Ozar こんにちは。谷口です。 エンジニアを目指している、もしくはエンジニアと一緒に仕事をしている方の中には「SQLを学習したい」という方も多いでしょう。もちろん、エンジニアでも「なんとなくSQL使ってるけど、実は苦手……」という方は少なくないと思います。 ただ、「SQLを勉強したいけど、実際に触って試せるデータベースがない」という方は多いですよね。SQLは実際のデータベースがないと操作ができないので、勉強したくてもなかなかできないのが難点でした。 paizaにも「もっとSQLを触りたい、実践的な問題が解きたい」といった声が多く寄せられています。そこで今回はSQLの練習問題がたくさん解ける学習コンテンツを7件ご紹介します。 【目次】 ■SQLとは? ■SQLの問題がたくさん解ける学習コンテンツ ◆Progate ◆Codecademy ◆paizaラーニング
Photo by Delwin Steven Campbell こんにちは、谷口です。 皆さんは普段お仕事でSQLを使っていますか? ITエンジニア以外の職種だと、「自分では使えないので、データがほしいときなどはエンジニアに依頼している」という方も多いと思います。 ただ自分でSQLが使えないと、今すぐデータがほしいのに確認できるまで時間がかかったり、エンジニアの仕事を増やしてしまったりして、双方にとって面倒が増えてしまう場合もあるかと思います。 「エンジニアじゃないんだからSQLなんてわかんないよ!」と思われるかもしれませんが、既に運用中のデータベースから基本的なデータ取得をするのであれば、自分で基本的なSQLの使い方を覚えた方が、マーケティングや営業、分析や企画といった業務も捗るはずです。 今回はSQL初心者の方に向けて、ブラウザ等でSQLを書きながら学べるコンテンツをご紹介します。 ■
SELECT * WHERE a=b FROM c ? それとも SELECT WHERE a=b FROM c ON * ? もしあなたが私のようなプログラマだったら、SQLは、初めは優しく見える言語の1 つかもしれません(ただ単に普通の英語通り読めばいいですから)。ですが、何かしらの理由で、なんてことのないクエリにもいちいち正しいシンタックスをググらなければいけないでしょう。 いずれJOINにAGGREGTATION、サブクエリにたどり着くでしょうが、読んだとしてもさっぱりでしょう。例えば次のような感じです。 SELECT members.firstname || ' ' || members.lastname AS "Full Name" FROM borrowings JOIN members ON members.memberid=borrowings.memberid JOIN
いやー、知らないって怖いね。 なんだこのキモいSQLは、って思ってしまったけど、調べているウチに、これちゃんとSQL構文に則ってる!こちらが間違ってた!って事がわかっていきました。 あえて、知らなかった所から勢いで書いていたのを、そのままにしてみました。 キモいSQLコードを偶然見つけた SQLにおけるORDER BYって、その後にカラム(およびそのエイリアス)を並べてソート順として使用するわけですが、MySQL案件のお仕事の中で偶然こんなものを見つけて、絵に描いたような二度見リアクションしました。 SELECT * FROM tbl ORDER BY id = 23; -- (1) SELECT * FROM tbl ORDER BY FIELD( id, 23, 234, 543, 23 ); -- (2)こうした、「ORDER BYに、あたかもWHERE句で絞り込む条件指定のような使
IT業界において数十年もの間、大きな仕様変更がなく主流の技術であり続けているのがリレーショナルデータベースとSQLです。『SQL 第2版 ゼロからはじめるデータベース操作』の著者でデータベースエンジニアのミックさんは、SQLを学べば長く役立つものの、データベースの魅力はそれ自体の面白さだとおっしゃいます。今回、ミックさんにデータベースの役割や魅力、そしてSQLの学び方についてうかがいました。 いろいろなシステムを見ることができるのが面白い ――ミックさんは『SQL 第2版 ゼロからはじめるデータベース操作』のほかにも、翔泳社から多数出版されています。データベースとSQLの書籍が主ですが、普段はどういった仕事をされているのでしょうか。 ミック:私はSIerに勤めていて、システム開発というよりは、システム開発でトラブルが起きたとき支援を行なうチームに所属しています。パフォーマンスを高めることが
みなさまごきげんよう! 嗚呼蛙でございます! 一昨日amazonアソシエイトの審査を無事通過したことを祝って、露骨なアフィ目的記事を書いてみました。 今日はデータベースの操作を行う言語『SQL』を実践的に学習できるサイトを発見したので、それについて書いていこうと思います。 SQLってなに? ブラウザ上でSQLの学習ができるサイト 日本語でのSQL学習 SQLってなに? SQLを知らない方のためにSQLについて簡単に説明しておくと、例えばネットショップで買い物をする時にこんな感じで「会員情報」「送付先」」「購入品」を登録しますよね。 【会員情報】 【送付先】 【購入品】 すると、ブラウザから入力された情報は、SQLを使ってこんな感じでデータベースに書き込まれます。 【会員テーブル】 【送付先テーブ】 【売上テーブル】 こんな風にブラウザから送られた情報をデータベースに書き込んだり、蓄積された
はじめに SQLが提供する結合演算には、その特徴に応じて内部結合、外部結合、クロス結合などさまざまな名前が与えられています。普通、これらの結合の多くは、異なるテーブルまたはビューを対象として行われます。しかし、SQLは結合が同一のテーブルまたはビューに適用されることを禁止していません。同一のテーブルを対象に行う結合を「自己結合(self join)」と呼びます。自己結合は、使いこなせば非常に便利な技術ですが、動作がイメージしにくいため敬遠されがちです。そこで本稿では、この自己結合の便利さを例題を通して学び、その動作を分かりやすく解説します。 自己結合を理解することは、実務上のテクニックを身につける以外に、もう一つ利点があります。それは、集合指向(set-oriented)というSQLの重要な特徴を理解できることです。オブジェクト指向言語が世界をオブジェクトとして表現するように、SQLは世界
SQLのパフォーマンス問題は、SQLそのものと同じぐらいの歴史がある―― ある人は、SQLはそもそも遅いものだとすら言うかもしれません。これは、SQLの歴史が始まった頃は正しかったかもしれませんが、今となっては全く 当てはまらないでしょう。にもかかわらず、SQLのパフォーマンス問題は今も一般的でよくあることです。どうしてそうなってしまうのでしょうか? SQL言語は、恐らく最も成功した第4世代言語(4GL)でしょう。その最大の利点は、「何を」と「どのように」 を分離できることです。SQL文は、どのようにそれを実行するかを記述せずに、単純に 何を必要としているかのみの記述になっています。以下のような例を考えてみましょう。 SELECT date_of_birth FROM employees WHERE last_name = 'WINAND'SQLのクエリは、データを要求する英語の文として読
SQLはデータベースからデータを抽出したりするための言語です。 この文書は、ErogameScapeのデータベースからSELECTを使って自由自在にデータを取得できるようになることを目標にします。 エロゲーをやりはじめる大学生くらいのときに、大学の講義でデータベースを学んで、退屈だなーと思った時に、ErogameScapeでSQLを学ぶことで、少しでもSQLに興味を持って、自身でデータを加工することを学習して頂けると幸いです。 ※私の大学のリレーショナルデータベースの授業では、自分の身の回りの何かをER図に落とし込んで、DBを設計し、PostgreSQLに実装し、実際にデータを入力してSELECTしてみるところまでをやりました。 ER図という概念を学んだとき「ああ、これは面白い」と思いました。 先生はこう言ったのです。 「ER図に落とし込むと、思いもよらなかったことが分かる。」と。 当時、
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く