ITの隊長のブログ

ITの隊長のブログです。Rubyを使って仕事しています。最近も色々やっているお(^ω^ = ^ω^)

SQL

今週学んだことをちょっとだけ書く

今月入社した会社さんは、いわいるデータサイエンティストを職とした感じで、Python、R、SQLを主に使うとのこと。 その中で「ほほー」と思ったこと(だけ)を書く。 ちなみに、大した内容ではなく自分だけのメモでおいておく。 任意の数値区切り別にグルーピ…

【MySQL & CakePHP2.x】任意の順番でソートしたい時

「順番を1、2、3ではなくて、2,3,1にしてほしい」 順番がゲシュタルト崩壊(?) データベース設計時、ここは順番が変わるかもしれない。ってどうやって予想すればいいかな。確かに順番が必要、って最初からわかっていたら、ソートキーのカラムを作…

【CakePHP3】Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails ~

なんかエラーが発生 SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (`a-curation`.`post_metas`, CONSTRAINT `post_metas_ibfk_1` FOREIGN KEY (`id`) REFERENCES `posts` (`id…

【MySQL】varchar型のカラムをinteger側で検索したいとき

商品のテーブルがあり、その中で登録しているカラム「商品の高さ」を"0cm〜30cmまで"みたいな検索を実装したかった。 普通に考えたらこんな感じ。 mysql> select * from items where height between '0' and '30'; しかし、その昔の仕様の際は「cm」と単位が…

PHPでPaginate

一回ドットインストールの動画を見て理解していたつもりだったけど、昨日やってみると全然覚えてなかったという話。フレームワークに慣れすぎってのも問題ですね。。。 dotinstall.com github.com とりあえずもう一度見なおして、即席でクラスを用意してみま…

MySQL5.7からは「VIRTUAL」って名前は使えません。

仕事で2ヶ月ぶりに触るコード。その間にアップデートされていたMySQL(5.5 => 5.7になってた) んで、とあるSQLでエラー吐いてた。 ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server ve…

【CakePHP2.x】migartionプラグインを使ってテーブルのフィールドを変更したい

もうCakePHP3.xがでたのにまだ2かよって話ですかね。まだ移行できない気持ちはわかるけど。 2月から新しいプロジェクトに携わっていて、「しめた・・・!」と思い、「CakePHP3.xつかいましょうよ〜^^」なんて提案しようかなとメモしていたら、新しいサーバ…

MySQLって変数使えたんですね(´;ω;`)ブワッ

しかも、自分の中で問題になっていた。「存在しない日付の月集計」もこれを使えば解決できました。 select * FROM (SELECT CAST(DATE_FORMAT('2014-01-01', '%Y%m') + CAST(VIRTUAL.generate_series AS UNSIGNED) as CHAR) AS ym FROM (select 0 generate_se…

【SQL】日付の形式を変えるよ DATE_FORMAT()さん

SQLは本当便利な関数ありますね。 日付の形式を変更したい場合はDATE_FORMAT()さんにおまかせあれ。 SELECT DATE_FORMAT(created, '%Y%m') AS ym, -- yyyymmの形式で表示される COUNT(posts.id) AS count FROM posts GROUP BY DATE_FORMAT(created, '%Y%m');…

【SQL】日付でGroupingして、カテゴリっぽいテーブルを紐付けようとしたけど紐付けきれないときのCrossJoin

(タイトルがナンノコッチャ!!) 文字だけじゃわからないはずなので、テーブルを用意します。 posts id post_date category_id 1 2015-01-01 1 2 2015-02-12 2 3 2015-01-01 1 4 2015-02-12 2 5 2015-01-01 1 6 2015-04-12 2 7 2015-05-01 1 8 2015-06-15 …

【MySQL】Case文やべぇえええ!!!(°ω°;

最近この本読んでいます。 達人に学ぶ SQL徹底指南書作者: ミック出版社/メーカー: 翔泳社発売日: 2013/06/20メディア: Kindle版この商品を含むブログ (3件) を見る んで、この本に書いていること実行したらやばかったお(^ω^ update cooking set seasoning …