そーだいさんが執筆された記事で、履歴テーブルから最新の1件を取ってくる方法について解説している。PostgreSQLの例だと以下のようなユーザーの履歴データに対し: CREATE TABLE history ( id SERIAL PRIMARY KEY, user_id INTEGER NOT NULL, data TEXT, created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ); INSERT INTO history (user_id, data, created_at) VALUES (1, 'First entry of user1', '2024-01-01 10:00:00'), (1, 'Second entry of user1', '2024-01-02 09:30:00'), (2, 'First entr
例えば次のようなテーブルがあったとする。 -- PostgreSQL CREATE TABLE history ( id SERIAL PRIMARY KEY, user_id INTEGER NOT NULL, data TEXT, created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ); -- MySQL CREATE TABLE history ( id INT AUTO_INCREMENT PRIMARY KEY, user_id INT NOT NULL, data TEXT, created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ); INSERT INTO history (user_id, data, created_at) VALUES (1, 'First
こんにちは。MySQLは秋の季語とする一派が世に存在していることを知り、私もMySQLに関わる記事を書いてみようと筆を取ることにしました。 さて、リレーショナルデータベースをバックエンドとするWebアプリケーション開発において、特定の条件に合致するレコードがN件だけ存在するかどうかを確認するロジックは頻出といえます。プログラマとして一度は書いたことがあるのではないでしょうか? この記事ではそのような件数カウントを行うためのクエリが引き起こした性能劣化と、その改善アプローチについて紹介していきます。 なお、本記事の内容はMySQLを前提としており、アプリケーションコードの例はRuby on Railsを用いますが特別な前提知識は必要ありません。コードの雰囲気だけ感じ取っていただければと思います。 ありがちなコード if query.count == n の問題 冒頭で述べた通り、特定の条件に
2023年版データ分析の100冊 が好評でしたので、2024年版を作りましたよ。 本記事のめあて IT系の技術者の方がデータ分析関連の仕事をするために役立つ本を紹介する(私が学び始めた時にあれば欣喜雀躍したであろう)記事として書いております 本記事作者の青木はバイオインフォマティクス(ゲノムデータのDB化中心・Perl・MySQL)からRで時系列分析→Pythonでデータ分析一般と業務をしてまいりました ですので研究者目的の本はありません。また、データ分析の基礎は主にRで学んだのですが、昨今の流行に合わせて理論のほかはほぼPython本のみにしています こういうリストを挙げる奴は大抵読んでいない、と過去にも言われたのですが、未読本は削除しました 最近好著連発なので読んでいる途中だけど挙げている本はあります(初版を読んだが改訂版が出てそちらは読んでいないのが何冊か、PRMLの下巻も読んで仕事
タイトルは釣りです。 この記事は Vim Advent Calendar 2023 16 日目の記事です。 はじめに みなさんは SQL はどんな環境で編集しているでしょうか? Visual Studio Code?それとも Vim?まさか Vim/Neovim の素の状態で編集していたりしませんよね? 僕はしていました。 sqls (SQL Language Server) 以前、lighttiger2505 さんが開発した sqls に少しコントリビュートしていた頃がありました。 既に public archive になってしまっていますが、機能として実用的なままです。コントリビュートしていた頃は、あくまで OSS としての興味の方が大きく、如何に機能的にしていくかだけ着目していたため、常用はしていませんでした。 あらためて常用してみる sqls の導入 Vim から sqls を使う
このサイトでは、SQL を高速化するためのちょっとしたパフォーマンス・チューニングの技術を紹介します。と言っても、『プログラマのためのSQL 第2版』の受け売りがほとんどなので、この本を読んでいただければ、本稿を読む必要はありません。 最初に、パフォーマンス・チューニングに関する全体の方針を述べておくと、それはボトルネック(一番遅いところ)を改善することです。当たり前ですが、既に十分速い処理をもっと速くしたところで、システム全体のパフォーマンスには影響しません。従って「処理が遅い」と感じたら、最初にすることは、SQL やアプリの改修ではなく、「どこが遅いのか」を調査することです。いきなりあてずっぽうで改善をはじめても効果は出ません。医者が患者を診るとき最初にすることが検査であるのと同じです。病因が何であるかを突き止めてからでないと、正しい処方はできないのです。 その基本を承知していただいた
衛星データ解析 Advent Calenderは、衛星データを世の中に役立つように解析したことについてのAdvent Calendar です。 衛星データを役立つよう解析したことであれば何でも構いませんので、お気軽に (下図 2023年2月1日 市町村別 新型コロナ陽性者予測) 。 edit_calendarHow to join the calendarYou can join the calendar by selecting an available date and registering the URL of the article you wish to link to. If a slot is available, you can go back to a past date to join!
Using SQLite: Small. Fast. Reliable. Choose Any Three. (English Edition) 目次 目次 はじめに SQLiteの歴史 特徴 トランザクションがある 設定がない 様々なSQL機能が利用可能 クロスプラットの単一ファイルで管理 高速にデータにアクセスできる 大規模なデータを管理できる ソフトウェアが小さい ソフトウェアやファイルフォーマットが安定している ソースコードがPublic domainで公開されている。 ソフトウェアとしての品質が高い 使い方 公式のCLIツールを使う Pythonの公式モジュールsqlite3を使う PandasのDataFrameとSQLiteをやり取りする 参考資料 MyEnigma Supporters はじめに 世界で最も使われているOSSってなんだろうと考えた時に、 真っ先に思いつくのが
I'm All-In on Server-Side SQLite Author Name Ben Johnson @benbjohnson @benbjohnson Image by Annie Ruygt I’m Ben Johnson. I wrote BoltDB, an embedded database that is the backend for systems like etcd. Now I work at Fly.io, on Litestream. Litestream is an open-source project that makes SQLite tenable for full-stack applications through the power of ✨replication✨. If you can set up a SQLite database
Intro 最近とあるデータベースに関する記事を読んだのですが、Upstashについて誰も言及しておらずヤバいなと思ったので紹介することにしました。 ちなみに私も今日はじめてアカウント登録するのでご安心ください。 ゴールデンウィークは色々始めたくなるものです。 Upstashはサーバーレスデータベースを提供するサービスです。 Redisを主に扱っていますが一応Kafkaも使うことができます。 詳しく調べた感じだともう一つぐらい使えるデータベースが増えそうな気がしたので様子見していたのですが、 3月中旬に約2.3億円の資金調達を行いしばらくは既存サービスの強化を行うようなのでとりあえず使ってみることにします。 Upstash 様々な特徴がありますが特筆すべき点として、AOFモードで永続性が常に有効になっている点が挙げられます。 つまりRedisでありがちなキャッシュやエフェメラル用途で使える
なぜシェルスクリプトで高度なデータ管理にSQLiteを使うべきなのか? ~ UNIX/POSIXコマンドの欠点をSQLで解決するShellScriptUNIXSQLitePOSIXQiitadelika 「利用者は数十億人!? SQLiteはどこが凄いデータベース管理システムなのか調べてみた」の続きです。 はじめに 複雑な構造のデータを扱うのであればシェルスクリプトや Unix (POSIX) コマンドでデータ管理を行うのは避けるべきだと思います。解決不可能な問題が多いからです。しかしそれでも何かしらの理由でやろうと考える(やらなければいけない)のであれば SQLite を使うのをおすすめします。シェルスクリプトや Unix コマンドは行単位の単純なテキストデータをシーケンシャルにデータ処理するのが前提となっており、改行や空白が含まれるデータや複雑な構造のデータ扱うのは苦手です。またシェル
はじめに SQLite3 くらい楽に扱えて、PostgreSQL みたいにネットワーク経由で使える物ないかなーなんて思ったりする事ないですか?ありますよね、あるんです。 postlite このニーズに答えてくれるのが postlite です。postlite を使うと SQLite3 で作られたデータベースファイルを、PostgreSQL の様に扱えます。 仕組みは至って簡単で、僕が開発している go-sqlite3 に PostgreSQL の通信プロトコルのガワと、仮想テーブルを使って PostgreSQL のスキーマを疑似しています。 インストール postlite は go-sqlite3 の vtable を使います。ですので、go install ではなく postlite の README.md に書かれた手順を使わなければなりません。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く