Continue(s)

Twitter:@dn0t_ GitHub:@ogrew

MySQL

テーブル構造を確認したい [MySQL, PostgreSQL, Redshift]

MySQL DESC user_item; PostgreSQL \d user_item; redshift select * from pg_table_def where tablename = 'user_item';

重複を除いてレコード数をCOUNTするSQL

あるテーブルの特定のカラムで重複なくカウントしたい場合 SELECT COUNT(*) FROM (SELECT DISTINCT level FROM player); みたいにサブクエリとして書いていたが、 SELECT COUNT(DISTINCT level) FROM player; みたいにかけることを知った。 こちらのほうがス…

クロス結合(CROSS JOIN)が役に立つケースに初めてぶつかった。(横持ち⇔縦持ち変換)

話を始める前にまずは簡単によく使うSQLの結合公文を復習していきます。 - INNER JOIN (内部結合) - LEFT OUTER JOIN (左外部結合) - RIGHT OUTER JOIN (右外部結合) - FULL OUTER JOIN (完全外部結合) このままの形式で書くことはあまりありません。基本的…

日付・時間の文字列操作にはDATE_FORMATよりEXTRACTのほうが便利そう。

チームメンバーの書いたクエリで見覚えのない関数が使われいたので調査。 MySQL :: MySQL 5.6 リファレンスマニュアル :: 12.7 日付および時間関数 EXTRACT関数を使うとDATE値の結果から一部を抽出できる。 よく見るDATE_FORMAT関数を使うより文字列を解釈せ…

MySQL ver5.7でmysqldumpしようとしてエラーが出たときの対処法

※この記事はQiitaに2017年12月26日に投稿したものと同一です。 qiita.com

MySQLでSELECT FOR UPDATEと行ロックの挙動を検証してみた

どうも、今日も今日とて野毛で飲みながらブログを書いている@0kawaraです。 今日は、普段あまり意識してこなかったMySQLのInnoDBでのロックの振る舞いについて色々実験してみました。(もちろん、きっかは自分がドツボにはまったから) ちゃんと理解するため…

MySQLでcsvファイルをインポートしようとしたらハマった

作業メモ。 タイトルの通り、MySQLでcsvファイルをインポートしようとしたらハマったのでその対応策まとめ。

MySQLでレコード数を一々COUNT関数を使わずにサクッと調べる方法

MySQLを勉強する上でネットからサンプルデータをローカルにダウンロードしていろいろ実験したいわけですが、そのたびに一々 「このサンプルデータにはどれくらいデータが入ってるんだろう?」 とshow tablesしてdescribeしてcount(*)して…みたいなことをして…

MySQL5.7で(database|table|culumn)名を変更する方法まとめ

database名もtable名もcolumn名も(特にすでにデータが入っている場合は)後から変更すべきではない、という前提の元まとめてみました。 ※間違いやご指摘等ありましたらTwitterまでご連絡下さい。 まず先にMySQLのバージョンを確認。 > $ mysql --version my…