タグ

ブックマーク / tech.asoview.co.jp (2)

  • 競走馬の血統をSQLで再現できる! 再帰クエリ徹底活用してみた - asoview! Tech Blog

    アソビュー! Advent Calendar 2022の10日目です。 8月に入社しアソビューでバックエンドエンジニアをしている長友です。 みなさま再帰クエリ使っていらっしゃるでしょうか! 最近アソビューではmysqlの8系へのバージョンアップを行った為、再帰クエリの利用が可能となりました。 そこで日は、アソビュー競馬部にも所属しておりサラブレッドの血統好きな私が再帰クエリを使ってツリー構造の血統表を作成してみるというお話です。 血統表とは ~ 稿の目的 再帰クエリについて mysqlにおける再帰クエリの構文 再帰クエリとナイーブツリー構造 血統表作成における再帰クエリ 血統表のデータ構造 血統表を作成するクエリ ポイント1. 世代を表すgenerationを0で初期化し、各再帰の中でインクリメントする ポイント2. 世代内での配置を表すpositionを初期値1で定義し、再帰で取得す

    競走馬の血統をSQLで再現できる! 再帰クエリ徹底活用してみた - asoview! Tech Blog
    peketamin
    peketamin 2022/12/10
  • 履歴管理ができるテーブル構造を考えてみた - asoview! Tech Blog

    アソビュー! Advent Calendar 2019 の16日目の記事です。 アソビュー株式会社でバックエンドエンジニアをしている土屋です。 最近はスマブラにハマっており、大会に向けて日々練習中です。 記事の概要 DBでデータを効率的に管理するためのテーブル構造と、そのメリット・デメリットを考えてみたお話です。 背景 アソビュー!では様々なデータをRDBで取り扱っていますが、テーブル構造はメンテナンスが難しいです。 モノリシックなマスターテーブルが存在していて、更新日カラムが付属しているけどどこを更新したのかわからない。 また、過去のデータがほしいけどマスターテーブルなので元々がどんなデータだったかわからない。 ということがたまに発生したりします。 上記から履歴管理ができるテーブル構造を作る必要があったため、検討をしました。 検証 ショップと商品というデータの格納方法について、以下の2

    履歴管理ができるテーブル構造を考えてみた - asoview! Tech Blog
    peketamin
    peketamin 2021/05/03
  • 1