並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 1360件

新着順 人気順

SQLの検索結果1 - 40 件 / 1360件

  • 社内SQL研修のために作った資料を公開します | 株式会社AI Shift

    こんにちは、Development Teamの三宅です。 先日、社内(AI事業本部内)でSQL研修の講師を担当したので、今回はその内容について簡単に共有したいと思います。 はじめに 例年、AI事業本部では、新卒エンジニアの育成のためにソフトウェアエンジニア研修を行っております。今年はフルリモートでの実施となりました。研修期間は2週間ほどで、内容は前半が講義、後半が実践(チーム開発)でした。私が担当したのは、講義パートの一部であるSQL研修です。SQLやRDBにあまり慣れていない人でも、できるだけ体系的な学びが得られるようにすることを目標に、様々な資料をまとめて提供する方針で準備しました。結果的には、ハンズオン込みで4時間ほどのやや長い講義となりましたが、勉強になったという声も頂けたのでやって良かったと思っています。 研修資料 研修内容 SQL研修の内容は、基本的には大学のデータベース講義で

      社内SQL研修のために作った資料を公開します | 株式会社AI Shift
    • MongoDBの様なNoSQLに勢いがあるのは何故ですか?SQLと比べてどんな利点や欠点がありますか? - Quora

      回答 (3件中の1件目) とにかくデータが大量になったせいです。高度で複雑な機能を持つRDBMSでは負荷が高すぎることから、機能を端折ってでも大量データを高速に処理したいということです。

        MongoDBの様なNoSQLに勢いがあるのは何故ですか?SQLと比べてどんな利点や欠点がありますか? - Quora
      • 【悲報】防衛省のワクチン予約システム 早速ネット民のおもちゃに「SQLインジェクションできる」「同じ番号入れるとその前の予約がキャンセル」【真偽不明】

        まとめ 岸防衛大臣「AERA・毎日新聞は極めて悪質な行為」ワクチン予約欠陥報道に大激怒! えーw具体策が「市区町村コードが真正な情報である事が確認できるようにする等」ってこのまま突っ走るつもりなんかw 14709 pv 167 14 users 27

          【悲報】防衛省のワクチン予約システム 早速ネット民のおもちゃに「SQLインジェクションできる」「同じ番号入れるとその前の予約がキャンセル」【真偽不明】
        • SQL記述者全員が理解すべきSELECT文の論理的な処理順序のお話 - Qiita

          2020/9/30追記 本記事は元々、「SQL記述者全員が理解すべきSELECT文の実行順序のお話」というタイトルで投稿しておりました。 しかし、知見のある方からのコメントと自分でも調べてみた結果、今回紹介している順序はあくまで論理的な処理順序であり、実行順序とは別物ということがわかりました。 誤った知識を布教してしまい申し訳ございません。 2020/9/30のタイミングで、本記事のタイトルを「SQL記述者全員が理解すべきSELECT文の論理的な処理順序のお話」に変更させていただきました。 はじめに 「SQLといえば、エンジニアが扱うスキル」と思われがちですが、最近はマーケターや営業など、非エンジニアの方もSQLを使って、自らデータを抽出し分析する方が増えてきています。 またエンジニアの方でも、ORM任せでなんとなく理解している状態の方もいるのではないでしょうか? 今回は、そんな方々にこそ

            SQL記述者全員が理解すべきSELECT文の論理的な処理順序のお話 - Qiita
          • アパレルで死ぬほどがんばって年収400万だった人がSQLとExcelと基本情報技術者試験で年収600万になった話

            (あんちべ! 俺がS式だ) @AntiBayesian 統計屋。 データ解析やDMP開発、データ解析組織作りなどご相談ください。 主著:「データ解析の実務プロセス入門(amzn.to/3vgVTmS)」 プロフィール:engineer-lab.findy-code.io/jobs-in-statis… (あんちべ! 俺がS式だ) @AntiBayesian 飲食やアパレルなど、市場の先行きも不安でこのままだとスキルも身に付かず…って将来不安視されてる方にプログラミングやシステム開発を学ぶのお勧めしてる。 人手不足のIT系に転職するのもありだし、ドメイン知識活かしてその市場の開発を担うことでハッピーになるケースあるので 2022-01-16 15:36:44 (あんちべ! 俺がS式だ) @AntiBayesian あとこう言う話すると必ず「IT系も闇が〜」と言われるけど、この先闇しかない市場

              アパレルで死ぬほどがんばって年収400万だった人がSQLとExcelと基本情報技術者試験で年収600万になった話
            • 非エンジニアが最速でSQLをマスターする方法 - Gunosy Tech Blog

              こんにちは、データ分析部の石塚です。 Gunosyではエンジニア以外の職種でもSQLを叩いて自らデータを集計・分析するという習慣と全社員が各サービスのログ*1に触ることができる環境があります。 例えば、ユーザー獲得を担っているプロモーションチームはエンジニアが0名のチームなのですが、実際にSQLを叩いています。 それによって、自分たちの獲得したユーザーはどのような行動をしているのかを確認したり、分析することができています。 これはGunosyのみの事例ではなく、AWSのRedshiftやAthena、GCPのBigQueryが台頭してきたおかげで、どの会社も低コストにログをSQLで集計・分析できる基盤が整ってきています。 個人的にはアプリやウェブの業界で働くマーケターにはSQLは必須の知識と言える時代になってきたと感じています。 そこで今回は特別プログラミングなどの経験が無い人でも、SQL

                非エンジニアが最速でSQLをマスターする方法 - Gunosy Tech Blog
              • 『データ分析のためのSQL勉強会』資料公開|高橋 光|note

                これからSQLを学びたいと思っている方向けに作成したSQL勉強会の資料を公開します!(以下の方向けの勉強会資料です) SQLをこれから学びたい人 仕事でSQLを触り始めたけどイマイチよくわからない人 データ集計やデータ分析をエクセル使ってやってる人 資料こちらから最新の資料をダウンロードして下さい。 (※「Source code (zip)」からダウンロードして下さい) 資料の構成は以下の通りです。 docs PDF資料 演習問題など含めて全部で約200ページくらいあります data ハンズオン用テストデータ csvファイル3つ script ハンズオン用テストデータ作成スクリプト ※実際のハンズオンでは使わないのでご参考程度に見て下さい 資料のアジェンダとしてはこんな感じになってます。 簡易的に資料だけ見たい方はこちらご参考下さい。(お勧めは上記リンクから資料をダウンロードしてPDFを手

                  『データ分析のためのSQL勉強会』資料公開|高橋 光|note
                • メタップス、不正アクセスやられ放題 最大46万件のカード番号やセキュリティコード流出か バックドアやSQLインジェクションの痕跡見つかる

                  クレジットカード決済基盤を提供するメタップスペイメント(東京都港区)は2月28日、同社のデータベースから最大で46万件のクレジットカード番号、有効期限、セキュリティコードなどが流出したと発表した。サーバへの不正ログイン、SQLインジェクション、バックドアの設置などさまざまな攻撃を受けていたことが調査で分かった。 流出した恐れがあるのは2021年8月2日から22年1月25日までに決済で使われたクレジットカードの番号、有効期限、セキュリティコードなど46万395件、21年5月6日から22年1月25日までに実行された決済情報593件、加盟店情報38件。「実際に流出した情報を特定できない」(メタップスペイメント)ため、数値は考えられる最大値という。 同社は21年12月14日に、サービスの提携先からクレジットカードの不正利用が懸念されているとの連絡を受け調査を開始。22年1月中に、外部からデータベー

                    メタップス、不正アクセスやられ放題 最大46万件のカード番号やセキュリティコード流出か バックドアやSQLインジェクションの痕跡見つかる
                  • ポケモンを題材に「SQLアンチパターン」を実践してみる - kanayamaのブログ

                    @tkanayama_です。「SQLアンチパターン *1」 という本を読みました。「ポケモンを題材に因果推論を実践してみる」のように、仮想的なストーリ上で実際に使ってみた感を出すことにより、自分の記憶に定着させることを狙います。 前提として、何をアンチパターンとするかは状況(ベンダーフリーである必要があるかどうか、どの程度の頻度で更新されるか・・・など)によって大きく異なるので、下記で紹介するアンチパターンは実は状況によっては問題にならないケースもあるかと思います。この投稿はあくまで「SQLアンチパターン」に忠実に従うことが目的です。 www.oreilly.co.jp 追記 登場人物 ストーリー フシギダネへの対応 ヤミカラスへの対応 ディグダへの対応 誤登録でポケモントレーナーになってしまったユーザーの削除 最後に 謝辞 追記 このブログを公開後、「外部キー制約はレコードロック周りのト

                      ポケモンを題材に「SQLアンチパターン」を実践してみる - kanayamaのブログ
                    • Google、ORMが生成するSQLが遅いときの調査を容易にする「sqlcommenter」をオープンソースで公開。Rails、Spring、Djangoなど主要なフレームワークに対応

                      Google、ORMが生成するSQLが遅いときの調査を容易にする「sqlcommenter」をオープンソースで公開。Rails、Spring、Djangoなど主要なフレームワークに対応 SQL文を直接書かなくとも、自動的にSQL文を生成、実行してくれるORM(Object-Relational Mapper)は、プログラミングを容易にしてくれる技術としてRailsやHibernate、Springなどさまざまなフレームワークなどで活用されています。 一方で、ORMが生成するSQL文はときに複雑に、あるいは非効率なものとなり、データベース処理の遅さにつながることもあります。 このとき、SQL文の生成と実行を明示的にコードとして記述する必要がないというORMの特徴が、なぜデータベース処理が遅くなったのか、どのようなSQL文が生成され、そのどこに原因があるのか、といった調査を難しくている面があり

                        Google、ORMが生成するSQLが遅いときの調査を容易にする「sqlcommenter」をオープンソースで公開。Rails、Spring、Djangoなど主要なフレームワークに対応
                      • 社内で好評だったSQLインジェクションの資料を公開します

                        先日(2020年2月21日)に、社内のとある会議でSQLインジェクションについてプレゼンしてきたのですが、割合と好評だったようなのでここでも公開してみます。 スライドのタイトルをクリックすると拡大したスライドで見ることができます。 SQLインジェクションから見るWebアプリケーションセキュリティ 実際には、SQLインジェクションの脆弱性があるとアカウント情報が漏洩して、システムが乗っ取られるまでデモまで行ったのですが、そこは資料に含まれていません。 ですが、判例からもSQLインジェクションの脆弱性を持ったサービスを公開することのリスクが分かるのではないかと思います。 追記: デモの内容を記事にしました。

                          社内で好評だったSQLインジェクションの資料を公開します
                        • SQLをはじめよう - 初心者でもわかる、構文とデータ取得の基本 - エンジニアHub|Webエンジニアのキャリアを考える!

                          SQLをはじめよう - 初心者でもわかる、構文とデータ取得の基本 リレーショナルデータベース管理システム(RDBMS)において、データの操作や定義を行うためのデータベース言語であるSQL。“データ”の重要性が謳われるようになった昨今において、この言語はより重要性を増しています。本稿では日本MySQLユーザ会の副代表であり、データベースを中心とした業務システムの設計・コンサルティングを手掛ける坂井恵さんが、「SQLを学びはじめたばかりの若手IT技術者」や「社内のデータを利用したい非IT技術者」に向けて、SQLによるデータ操作の基礎を解説します。 企業活動において、近年ますます、蓄積されたデータの活用が重要になっています。自社の持つ大量のデータの中から必要なデータを抽出・集計するという操作は、以前はITエンジニアが用意した画面を通して限定的にのみ行うことができるのが一般的でした。 しかし最近は

                            SQLをはじめよう - 初心者でもわかる、構文とデータ取得の基本 - エンジニアHub|Webエンジニアのキャリアを考える!
                          • 実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial

                            PostgreSQLの権限管理 ~ アカウントの操作とRow Level Securityの活用 ~ / pgcon2022-tutorial

                              実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
                            • 初心者向け・SQLの練習問題をたくさん解ける学習サイトと本7選 - paiza開発日誌

                              Photo by Brent Ozar こんにちは。谷口です。 エンジニアを目指している、もしくはエンジニアと一緒に仕事をしている方の中には「SQLを学習したい」という方も多いでしょう。もちろん、エンジニアでも「なんとなくSQL使ってるけど、実は苦手……」という方は少なくないと思います。 ただ、「SQLを勉強したいけど、実際に触って試せるデータベースがない」という方は多いですよね。SQLは実際のデータベースがないと操作ができないので、勉強したくてもなかなかできないのが難点でした。 paizaにも「もっとSQLを触りたい、実践的な問題が解きたい」といった声が多く寄せられています。そこで今回はSQLの練習問題がたくさん解ける学習コンテンツを7件ご紹介します。 【目次】 ■SQLとは? ■SQLの問題がたくさん解ける学習コンテンツ ◆Progate ◆Codecademy ◆paizaラーニング

                                初心者向け・SQLの練習問題をたくさん解ける学習サイトと本7選 - paiza開発日誌
                              • SQLが重いときに見るお気軽チューニング方法

                                SQLのチューニング方法 昔Qiitaで書いたものをzennにうつして、若干の修正、追加をしてみました。 ORACLEでの経験を元に書いていますがコストベースのリレーショナルデータべースなら大体共通の考え方だと思うので他にも使えると思います。 SQLのチューニングといえば比較的容易に済むインデックスをとりあえず作成する。といった対応を取られがちですが、数万レコード程度でのデータ量ではあまり効き目がなく(自分の経験則)、どちらかといえば、結合順が大幅に狂ってたりすることが原因のことが多かったりします。よって本当にインデックスがないことが原因なのか?を熟考する必要があります。(例えばID以外のフラグとかコードに単項目indexを貼ってるのもみたことがあります。怖いけど実話) また、インデックスを作りすぎるとオプティマイザが狂いやすくなって他のSQLにも悪影響を及ぼしたりするので結構熟慮して追加

                                  SQLが重いときに見るお気軽チューニング方法
                                • SQLアンチパターンもりもりDBを設計しよう! - Qiita

                                  概要 名著SQLアンチパターンを読み終えたので、それの復習のために悍ましいデータベースを作ろうと思った。 まず前半では、SQLアンチパターンを意図的に盛り込み、目も当てられない酷い設計をします。 そのあとリファクタリングを行なったER図に書き直していきます。 なお、真面目に書くと参考書の丸写しになってしまうので、この記事は アンチパターンもりもりのER図を見て嫌悪感を学習し、設計に役立てようという趣向のもと、詳しい説明は省きます。 とても良い本なので読んでください。 想定するシステムの概要と状況 目的において適切かはわかりませんが、とりあえず考えることの多い”お金”を扱うシステムを想定してみます。 私はブラックジョークが好きなので、今回は「ちょっと怖い金融屋さんが使う債務者管理システム」のER図を設計してみようと思います。 ざっくりした要件 債務者を登録でき、プロフィールを入力できる。 債

                                    SQLアンチパターンもりもりDBを設計しよう! - Qiita
                                  • SQLインジェクション対策不備の責任 東京地判平30.10.26(平29ワ40110) - IT・システム判例メモ

                                    SQLインジェクション対策をしていなかったことについて開発会社の責任が問われた事例。 事案の概要 Xは,Yに対し,Xの提供する車・バイクの一括査定システム(本件システム)の開発を約320万円で委託し,平成24年9月に納品を受けた。 その後Xは,平成28年12月に,IPA*1から,中国のサイトに本件システムの脆弱性に関する情報が掲載されているという指摘を受けて,Yに対し,その調査と報告を依頼した。 その結果,本件システムには,SQLインジェクション対策が不十分という脆弱性が判明したことから,XはYに対し,その脆弱性はYの被用者の故意過失によって生じたものであるから,使用者であるYには使用者責任があると主張して,民法715条1項所定の損害賠償請求権に基づき,緊急対策費用47万5200円,詳細な調査,抜本的な修正費用640万円,サーバー移転費用35万6400円,セキュリティ対策のための本件システ

                                      SQLインジェクション対策不備の責任 東京地判平30.10.26(平29ワ40110) - IT・システム判例メモ
                                    • SQLで羃等にDBスキーマ管理ができるツール「sqldef」を作った - k0kubun's blog

                                      sqldefのリポジトリ github.com これは何か Ridgepoleというツールをご存じでしょうか。 これはRubyのDSLでcreate_tableやadd_index等を書いてスキーマ定義をしておくとそれと実際のスキーマの差異を埋めるために必要なDDLを自動で生成・適用できる便利なツールです。一方、 で言われているように、Ridgepoleを動作させるためにはRubyやActiveRecordといった依存をインストールする必要があり、Railsアプリケーション以外で使う場合には少々面倒なことになります。*1 *2 そこで、Pure Goで書くことでワンバイナリにし、また別言語圏の人でも使いやすいよう、RubyのDSLのかわりに、誰でも知ってるSQLでCREATE TABLEやALTER TABLEを書いて同じことができるようにしたのがsqldefです。 使用例 現時点ではMy

                                        SQLで羃等にDBスキーマ管理ができるツール「sqldef」を作った - k0kubun's blog
                                      • AWS、SQL互換の新問い合わせ言語「PartiQL」をオープンソースで公開。RDB、KVS、JSON、CSVなどをまとめて検索可能

                                        Amazon Web Services(以下AWS)は、SQL互換の新しい問い合わせ言語およびそのリファレンス実装である「PartiQL」をオープンソースとして公開したことを発表しました。 PartiQLはSQL互換の構文に最小限の拡張を施すことで、リレーショナル形式のデータベースだけでなく、KVSやJSONなどを含むNoSQLデータベースやCSVファイルなど、さまざまなデータソースに対して横断的に検索できる問い合わせ言語およびそのリファレンス実装です。 下記はPartiQLを発表したブログからの引用です。 Today we are happy to announce PartiQL, a SQL-compatible query language that makes it easy to efficiently query data, regardless of where or in

                                          AWS、SQL互換の新問い合わせ言語「PartiQL」をオープンソースで公開。RDB、KVS、JSON、CSVなどをまとめて検索可能
                                        • Node.jsのMySQLパッケージにおけるエスケープ処理だけでは防げない「隠れた」SQLインジェクション - Flatt Security Blog

                                          ※本記事は筆者styprが英語で執筆した記事を株式会社Flatt Security社内で日本語に翻訳したものになります。 TL;DR Node.jsのエコシステムで最も人気のあるMySQLパッケージの一つである mysqljs/mysql (https://github.com/mysqljs/mysql)において、クエリのエスケープ関数の予期せぬ動作がSQLインジェクションを引き起こす可能性があることが判明しました。 通常、クエリのエスケープ関数やプレースホルダはSQLインジェクションを防ぐことが知られています。しかし、mysqljs/mysql は、値の種類によってエスケープ方法が異なることが知られており、攻撃者が異なる値の種類でパラメータを渡すと、最終的に予期せぬ動作を引き起こす可能性があります。予期せぬ動作とは、バグのような動作やSQLインジェクションなどです。 ほぼすべてのオンラ

                                            Node.jsのMySQLパッケージにおけるエスケープ処理だけでは防げない「隠れた」SQLインジェクション - Flatt Security Blog
                                          • 非エンジニアのSQL学習ことはじめ

                                            これは何「来年こそはSQL書けるようになるぞ」と思ってる方に向けた、1日1時間・3か月でSQLそこそこできるようになる学習方法について書いた記事です長文がつらつら書いてある本稿ですが、要するに言いたいことは

                                              非エンジニアのSQL学習ことはじめ
                                            • SQL学習モチベを爆上げする「SQLテスト制度」を導入している話 - AppBrew Tech Blog

                                              こんにちは、最近はアプリグロースを担当しているabeshi(@abeshi_official)です。 美容のプラットフォーム「LIPS」を運営するAppBrewでは非開発職のSQL習得に力を入れています。誰でもRe:dashやログを触れる状態になっているし、それぞれのDBに何がどう入っているかを共有するためのドキュメントも存在しています。 「非開発職もSQL書けるように頑張ろう!」と掲げたところで、当の本人たちは毎日仕事が忙しくなかなか時間も取れない上に明確な目標がないといまいち学習モチベーションを保つことができません。そこで弊社が導入したのが「SQLテスト制度」です。 ✍️SQLテスト制度とは SQLの学習到達度によってレベルごとに分けたテストで、合格すると給与が上がります。 *1現在は二つレベルが存在していて、 【レベル2】... 初学者向けでwhere・joinなど基本的な文法が使え

                                                SQL学習モチベを爆上げする「SQLテスト制度」を導入している話 - AppBrew Tech Blog
                                              • SQL学習オンラインサービス「Start-SQL」をリリースしました - GoTheDistance

                                                こんな感じで、ブラウザでSQLを書いて環境構築一切不要でSQLを学べるというWebサービスです。 今北産業 SQL言語のみをサポートしています。 環境構築一切不要で、無料でお試し出来ます。 コンテンツには無料と有料の2つがあり、有料版は”買い切り”で、5000円です。全てのコンテンツがお楽しみ頂けます。 圧倒的にアカウントを買うニーズが強かった 2019年8月頃に「研修サービスのプラットフォームとして」告知をしたのですが、結論から言うと「講師や研修は別にいらん、アカウントだけ売ってくれ」が個人 / 法人共に、圧倒的に多かったため、会員登録/ログイン/マイページ/コンテンツ購入/パスワードリマインダなどの機能を別途付与して、Webサービスとしてリリースしました。 買い切りにした理由 コンテンツを定期的に追加する予定が全く無いためです。月額制にするならほっといてもコンテンツが増えていかねばなり

                                                  SQL学習オンラインサービス「Start-SQL」をリリースしました - GoTheDistance
                                                • すべてのエディタでSQLの自動補完をするためにSQL Language Server(sqls)を作った - Qiita

                                                  sqlsとは sqlsとは、いま私が開発中のSQL用Language Serverです。SQLをエディタで編集するときの支援機能を実装したサーバとなっており、主な特徴は以下です。 Language ServerなのでLSクライアントが存在するエディタであればどんなエディタでも利用可能 SQL編集支援機能 自動補完(テーブル名、カラム名など) 定義参照 SQL実行 複数のRDSMSに対応 MySQL PostgreSQL SQLite3 Language Serverとは Language Server(あるいはLanguage Server Protocol)とは、プログラム言語の開発支援機能をエディタに提供するサーバ、およびその通信内容を規定したプロトコルです。ただしサーバといってもほとんどの場合ローカル内にホスティングしてローカルのエディタと通信をします。 ここでは主題ではないので詳し

                                                    すべてのエディタでSQLの自動補完をするためにSQL Language Server(sqls)を作った - Qiita
                                                  • 100秒でMySQLのローカル環境をDockerで作って、データも自動で入れる。最強のSQL練習環境構築法

                                                    【2022/2/26 追記】 主にはてブコメントで様々なご指摘を頂いたので、タイトルの修正&内容を一部追記しました。分かりにくいタイトルを付けてしまい申し訳ございません。ご指摘ありがとうございます。 もともと本記事は自分用のメモを兼ねて駆け出しエンジニアの人が数人参考にしてくれたらいいかな、程度の気持ちで書いたものでした。 現在はてなブックマークのテクノロジーカテゴリーで 1 位になっており、予想の 1000 倍以上の人に見ていただける記事になってしまいました。 今後も精進します、ありがとうございます! 特に理由もなくローカルに MySQL を入れて遊びたくなる気持ちって定期的に湧きますよね。 私は湧きます、半年に 1 回ぐらい。 業務ではフロントを触ることが多く、DB はそれほど触りません。 そのため久々に MySQL をローカルで立ち上げようとするといつも手順を忘れてしまっていて、なん

                                                      100秒でMySQLのローカル環境をDockerで作って、データも自動で入れる。最強のSQL練習環境構築法
                                                    • SQLわかんねーーーーーーーー!!!!!!

                                                      学生時代に独学でVBAやってたのが零細企業でなぜか評価されてDB管理をやらされかけてるけど SQLマジでわかんねーーーーーーーーーーー!!! なんだこれーーーーーーーーーーーーー!! ああああああああああああああ!!!! わかんねーーーーーー!!!!

                                                        SQLわかんねーーーーーーーー!!!!!!
                                                      • 「分析SQLスタイルガイド」をかなり真面目に考えた - Qiita

                                                        目次 なぜSQLのスタイルガイドが重要なのか この記事の目的 この記事の対象者 分析SQLスタイルガイドの指針 基本ルール 命名規則 インデントルール 別名ルール joinルール クエリ分割ルール ⭐ コメント欄で「いや私はこう思う!」という意見をたくさんいただきました!ぜひそちらも御覧ください!(決して揶揄ではないです) なぜSQLのスタイルガイドが重要なのか SQLはプログラミング未経験者でもとっつきやすい言語と言われ、エンジニアや分析を本業としていない人でもSQLを使う機会が増えてきていると思います。 そんなSQLですが、こちらのブログでも指摘されている通り、一般的なスタイルガイドが定まっていません。スタイルガイドとはコードの書き方マナーようなもので、どこで改行するか、空白はいくつ入れるか、大文字を使うかなどの諸々を指します。 もしスタイルガイドが無いとこんな事が起こります コードに

                                                          「分析SQLスタイルガイド」をかなり真面目に考えた - Qiita
                                                        • 業務でどれだけSQL力がつくのか ~SQLアンチパターンを用いて確認~ 前編

                                                          はじめに こんにちは。 GMOアドマーケティングのKONCEです。 新卒で入社し、数年経ちました。日々の業務で学ぶことは多いですが、今年度は技術の深堀りをテーマにやっていきたいと思っています。 今回は入社してDBやSQLに関しては業務内で学ぶことが多く、特別訓練をしていたわけではなかったのですが、「SQLアンチパターン」を用いて学びながら、改めて自分の現状を見つめ直していけたらと思います。 今回は学習を行う側面と自分自身のレベルについて見直していきたいので 知っていた → ○ 部分的に知っていた → △ 知らなかった → × を付けてみようと思います。 目次 SQLアンチパターンについて Ⅰ部 データベース論理設計のアンチパターン 2-1. [○]1章 ジェイウォーク(信号無視) 2-2. [×]2章 ナイーブツリー(素朴な木) 2-3. [○]3章 IDリクワイアド(とりあえずID) 2

                                                            業務でどれだけSQL力がつくのか ~SQLアンチパターンを用いて確認~ 前編
                                                          • 「雑用扱いで名前もない」 データ分析の土台を支える“SQLを叩く人”の重要性を問い直す

                                                            「雑用扱いで名前もない」 データ分析の土台を支える“SQLを叩く人”の重要性を問い直す:これからのAIの話をしよう(データ整備人編)(1/3 ページ) データ分析をする上で欠かせない「データ整備人」とは、どんな役割を担う人なのか。ないがしろにされがちなデータ整備人の仕事について、データ分析の専門家が解説します。 多くの企業がデータの分析・活用に取り組んでいますが、その中で抜け落ちがちなのが、データ整備の視点です。データベースからデータを抽出・集計して分析者に渡す作業は地味に見えますが、データ分析の土台を支える極めて重要な仕事です。 この役割は、戦争でいうところの「兵站」(へいたん)に当たるほど重要なのではないか――データ分析に関する情報発信を続けるしんゆうさんが、自身のブログでこう問いかけた所、予想以上の反響があったといいます。 ※兵站:戦場で、前線の部隊のために軍需品や食料などの供給・補

                                                              「雑用扱いで名前もない」 データ分析の土台を支える“SQLを叩く人”の重要性を問い直す
                                                            • 次世代SQLクライアントArctypeを触ってみる

                                                              どうも、株式会社プラハCEOの松原です 先日社内のエンジニアに「このSQLクライアントがイケてそう!」と教わったので早速Arctypeを触ってみました TL;DR クエリの補完が最高 チャートやダッシュボードを通して簡単に可視化できる 操作性に優れていて、見た目が綺麗 クエリやダッシュボードごとに権限管理できる プレースホルダーを使えば非開発者ともクエリを共有しやすい 説明しよう、Arctypeとは なんかイケてるSQLクライアントです セットアップ それぐらいしか分からないので、ひとまずDBを立ち上げて実際に使ってみようと思います。こちらのmysql-employeesを使わせていただきましょう docker run -d \ --name mysql-employees \ -p 3306:3306 \ -e MYSQL_ROOT_PASSWORD=college \ -v $PWD/

                                                                次世代SQLクライアントArctypeを触ってみる
                                                              • 1文字でSQLを200倍遅くする方法

                                                                こんにちは、19のSysAd班の翠(sappi_red)です。普段はtraQのフロントエンドの保守を行ったりしています。 こんばんは、19のSysAd班のtemmaです。普段は普段どおりのことをしています。この記事の面白い部分はすべて僕が書いています。面白くないところは翠君が書いています。 この記事では、日々パフォーマンスに頭を悩ませる開発者の方のために、ワンタッチで劇遅SQLを200倍高速でキュートなSQLに劇的ビフォーアフターする方法を紹介します。 「おいおいおい、遅くしたくて記事を読み始めたのに話が違うじゃないか💢」と思ってるそこのあなた👈 早くできるということは遅くもできるんですね。 TL;DR ここにテーブルがあります。 CREATE TABLE messages ( id CHAR(36) NOT NULL PRIMARY KEY, text TEXT COLLATE ut

                                                                  1文字でSQLを200倍遅くする方法
                                                                • SQLアンチパターン簡単まとめ

                                                                  「SQLアンチパターン」について、自分の勉強がてら内容を簡単にまとめました。 「とりあえずSQLは触れてWebアプリが作れる」「シンプルなアプリを実務で作ったことがある」くらいの人が読むととても勉強になると思います。 また、「現場での良くない設計」が詳細に言語化されているので、経験豊富な人でも新たな発見があると思います。 詳しく知りたい方は是非本を買って実際に読んでみて欲しいです。 第一章 ジェイウォーク パターン 1カラムにコンマ区切りで値を入れて複数の紐付きを表現しようとする なぜダメか 検索しづらい 文字列カラムの文字数制限という暗黙の制約を受ける バリデーションかけられない 解決策 交差テーブルの作成 第二章 ナイーブツリー パターン 木構造を表現するとき、常に親のみに依存する(parent_idだけ持ってしまう) 隣接リスト なぜダメか 階層を深く掘ろうとするとそのぶんSQLをか

                                                                    SQLアンチパターン簡単まとめ
                                                                  • そろそろSQLのウィンドウ関数を理解したい - 連載1/3話 - Qiita

                                                                    はじめに データ分析とデータ品質改善に従事してきた筆者が、SQLを用いた分析の基本である「ウィンドウ関数」の使い方とデータ品質の調査改善を行う手法をまとめてみようと思います。 こちらの記事は、SQLの知識向上と振り返りを主題としているので、ABC分析、バスケット分析、RFM分析などの「データ分析の手法」について説明している記事ではありません。(反響やコメントによって別投稿するかもしれません) 背景 SQLはエンジニアの大多数が利用しており、多くの方はWebサービス開発などでデータの登録画面や検索画面を作る際にSQLを利用したり、またはシステムの運用保守で障害の原因調査のためにSQLを利用して原因を特定すると思います。そのため、テーブル結合・サブクエリ・集計関数といったSQL構文は理解されている人が多いと思いますが、分析関数を理解して使っている人となると、ぐっと減ると思います。 私は以前、社

                                                                      そろそろSQLのウィンドウ関数を理解したい - 連載1/3話 - Qiita
                                                                    • PostgreSQLでSQLチューニングや障害状況調査に使ったクエリ達まとめ - $shibayu36->blog;

                                                                      最近PostgreSQLでSQLチューニングや、DBが詰まった時の状況調査をいろいろやった。その時に便利だったクエリ達をまとめていく。PostgreSQLのバージョンは9.6系です。 SQLチューニングなどに便利だったクエリ達 それ以降に実行するSQLの実行時間を表示する。参考 https://morumoru00.wordpress.com/2011/05/08/postgresql-sql%E5%87%A6%E7%90%86%E6%99%82%E9%96%93%E3%82%92%E8%AA%BF%E3%81%B9%E3%82%8B%EF%BC%88timing/ \timing 実際にクエリを実行して実行計画や実行時間を表示する。クエリが実行されるので破壊的な操作も実行されてしまうことに注意。トランザクション張って最後にROLLBACKしましょう。参考 https://www.post

                                                                        PostgreSQLでSQLチューニングや障害状況調査に使ったクエリ達まとめ - $shibayu36->blog;
                                                                      • 「SQLアンチパターン」を避けるためのチェックリスト①(DB論理設計編) - log4ketancho

                                                                        ずっと前から積ん読状態だった「SQLアンチパターン」を読みました。 何年積んでたか分からないSQLアンチパターン読み終わったー。噂に違わずいい本ですねー。もっと早く読むべきだった。— @ketancho (@ketancho) 2018年3月6日 噂通りとても良い本で、まさに「エンジニアとしての血肉本」と言えます。1, 2年目の頃に読んでおくべきだったなーと少し後悔しています。 SQLアンチパターン 作者: Bill Karwin,和田卓人,和田省二,児島修出版社/メーカー: オライリージャパン発売日: 2013/01/26メディア: 大型本購入: 9人 クリック: 698回この商品を含むブログ (46件) を見る 読んで終わりだと身につかないと思うので、自分なりのチェックポイントを言語化しておこうと思います。長くなってしまったので、章ごとに4つに分けたいと思います。この記事はその第一弾と

                                                                          「SQLアンチパターン」を避けるためのチェックリスト①(DB論理設計編) - log4ketancho
                                                                        • ぐるぐるSQLは止めてくださいという話 - Qiita

                                                                          1. はじめに 仕事の都合で DB/SQL の性能問題を調査する機会が少なくありませんが(決してメインの仕事ではないですが)、その中でよく出くわす問題の1つに「ぐるぐるSQL」(もしくは「ぐるぐる系」)といわれる、ループで大量の SQL 文を呼び出しているものがあります。 感覚ですが、私の周りでは OLTP 系システムの DB/SQL の性能問題の原因の割合は以下のように感じています。 30%:ぐるぐる SQL 20%:SQL 文の書き方が不適切 15%:索引がない or 不適切 15%:パーズが遅い 10%:データモデルがおかしい 10%:その他 (大昔は2番目 / 3番目がほとんどだったのですが、最近はなぜがぐるぐる SQL が多い…) ぐるぐる SQL の実装では、ネットワーク通信や、アプリ側のクエリ生成 / 結果データ構築、DB 側のクエリ受信 / 結果送信といった、処理の本質的で

                                                                            ぐるぐるSQLは止めてくださいという話 - Qiita
                                                                          • なぜシェルスクリプトで高度なデータ管理にSQLiteを使うべきなのか? ~ UNIX/POSIXコマンドの欠点をSQLで解決する

                                                                            「利用者は数十億人!? SQLiteはどこが凄いデータベース管理システムなのか調べてみた」の続きです。 はじめに 複雑な構造のデータを扱うのであればシェルスクリプトや Unix (POSIX) コマンドでデータ管理を行うのは避けるべきだと思います。解決不可能な問題が多いからです。しかしそれでも何かしらの理由でやろうと考える(やらなければいけない)のであれば SQLite を使うのをおすすめします。シェルスクリプトや Unix コマンドは行単位の単純なテキストデータをシーケンシャルにデータ処理するのが前提となっており、改行や空白が含まれるデータや複雑な構造のデータ扱うのは苦手です。またシェルスクリプトと Unix コマンドではランダムアクセスが出来ないためデータの検索や更新に時間がかかってしまいます。これら多くの欠点は SQL でかなり解決することが出来ます。(「Unix コマンドの制限と移

                                                                              なぜシェルスクリプトで高度なデータ管理にSQLiteを使うべきなのか? ~ UNIX/POSIXコマンドの欠点をSQLで解決する
                                                                            • SQLクエリを実行、クエリ結果を可視化できるウェブアプリ「SQLPad」を試してみた | DevelopersIO

                                                                              こんにちは!DA(データアナリティクス)事業本部 サービスソリューション部の大高です。 SQLクエリをローカル環境でウェブアプリとして実行できるものが無いか少し探していたのですが、「SQLPad」というアプリケーションを見つけたので実際に試してみたいと思います。 SQLPadとは SQLクエリを実行、クエリ結果を可視化できるセルフホスティング型のウェブアプリケーションです。2022年1月現在では以下の15個のデータベースに対応しており、ODBCにも対応しているのでODBC接続を利用すれば、これ以外のデータベースにも接続可能なようです。 Postgres MySQL SQL Server ClickHouse Crate Vertica Trino Presto Pinot Drill SAP HANA Snowflake BigQuery SQLite TiDB 公式サイトでの解説は以下の

                                                                                SQLクエリを実行、クエリ結果を可視化できるウェブアプリ「SQLPad」を試してみた | DevelopersIO
                                                                              • SQL Training 2021

                                                                                Transcript SQL 株式会社 AI Shift 三宅 悠太 1. データベース 2. SQL I 3.トランザクション 4. データベース設計 5. インデックス 6. 実行計画 7. SQL II データベース データベースとは “A database is an organized collection of inter-related data that models some aspect of the real-world “ (CMU) データベースとは、実世界のある側面をモデル化した、秩序 だった、相互に関連したデータの集まり DBMS • データベース管理システム(DBMS)は、データベースを管理するソフトウェア ◦ 例:MySQL, Oracle Database, SQLite, MongoDB • DBMSの目的は、アプリケーションが簡単にデータベースにデー

                                                                                  SQL Training 2021
                                                                                • Announcing D1: our first SQL database

                                                                                  This post is also available in Français, Deutsch, Español, 简体中文, 日本語, 繁體中文. We announced Cloudflare Workers in 2017, giving developers access to compute on our network. We were excited about the possibilities this unlocked, but we quickly realized — most real world applications are stateful. Since then, we’ve delivered KV, Durable Objects, and R2, giving developers access to various types of stora

                                                                                    Announcing D1: our first SQL database