reponの日記 ないわ〜 404 NotFound(暫定)

はてなダイアリーより移行しました

SELECT文でGROUP BYを使う時、SELECT句でカラムにAS句の別名をつけるなら、GROUP BY句でも別名を付ける

MySQLを使っていて、LaravelのO/RマッパーでSELECT文を呼び出した際、表題のエラーが出ました。

toSql() でSQL文を取り出し、MySQLの対話環境でUnknown column 'hogehoge' in 'group statement' とエラーが出てくれたのでわかりました。

これはダメ

select id, name, DATE_FORMAT(date_column, "%Y-%m-%d") AS date, SUM(point) AS amount from employee GROUP BY DATE_FORMAT(date_column, "%Y-%m-%d") ORDER BY DATE_FORMAT(date_column, "%Y-%m-%d");

これでOK

select id, name, DATE_FORMAT(date_column, "%Y-%m-%d") AS date, SUM(point) AS amount from employee GROUP BY date ORDER BY DATE_FORMAT(date_column, "%Y-%m-%d");

GROUP BY 句は別名を付けたらその別名を使わなければいけない。ORDER BY 句は別名でなくても大丈夫。

Laravel の O/R マッパーだと

DB::table('employee')->groupBy('date')->selectRaw('id, name, DATE_FORMAT(date_column, "%Y-%m-%d") AS date, SUM(point) AS amount')->get()

git checkout -b hoge だけで安心できない

fugaというファイルをある程度変更してきたところで、自分がdevelopブランチで作業していることに気づく。

$ git checkout -b hoge

で、hogeブランチに移動、

$ git diff

modified: fuga

確認できたので、

$ git checkout develop

$ git checkout fuga

developブランチのfugaファイルをもとに戻す。

ふぃ〜安心だぁ。

$ git checkout fuga

$ git status

nothing to commit, working tree clean

無事死ねました。

「作業」にハマっているときに良く思い出す本の一節

 プログラミングによる問題解決の学習は、どうしてこんなにも難しいのだろうか?

 その理由のひとつは、「問題解決」と「プログラミングの学習」が、まったく異なる活動だからだ。それぞれ脳の違う部分を使う活動になる。プログラミング言語の構文を覚えたり、プログラムを読んだり、APIの構造を覚えたりするのは、どれも「左脳型」の活動だ。一方、これまでに学んだツールやスキルを使って、新たなプログラムを書くのは、クリエイティブな「右脳型」の活動になる。

 たとえば、雨どいに落ちた木の枝を取り除くことになったとしよう。手元にあるはしごは長さが足りず、枝まで手が届かない。ガレージに行って何か道具を探すか、複数の道具を組み合わせるなどして、雨どいから枝を取り除きたい。はしごを伸ばすことはできるだろうか? はしごの先に何かをくっつけて、枝を押し出したりつかんだりすることはできるだろうか? そんなことを考えるよりも、別の場所から屋根に上って、そこから枝を取ればいいのである。これこそが問題解決能力であり、クリエイティブな活動だ。信じられないかもしれないが、新しいプログラムを設計するときの思考プロセスは、雨どいから枝を取り除く方法を考えているときとよく似ている。そしてそれは、forループのデバッグするときの思考プロセスとはまったく異なるものだ。     (V.Anton Spraul “プログラマの考え方がおもしろいほど身につく本 問題解決能力を鍛えよう! (アスキー書籍)” イントロダクションより抜粋)

雨どいの下で、延々と「工夫」を繰り返していることが多いです。

これではしょーもないので、作業の時間と問題解決の時間をタイマーで強制的に区切ってます。

イシューからはじめよ――知的生産の「シンプルな本質」

イシューからはじめよ――知的生産の「シンプルな本質」

はてなダイアリーより移行しました

これからもどうぞよろしくお願いいたします。

はてなブログにはトラックバックがない」と、これまで移行せずに来たのですが、はてなダイアリーが終了する以上、致し方ないかと。

はてなダイアリー、これまでありがとうございました!

「観光化」を考えるための資料

色々と考えさせられるので、あとで検討したいです。好意的です。

ダイアリーのほうは

ダイアリーの方は、割とまとまったエントリを書きたいと思っていて、はてなブログは、あまりまとまっていないメモ的なものを書き付けておきたいと思っている。

とはいえ、やっぱりmarkdown使えるかどうかなんだよね。

markdown→はてな記法のパーサ書こうかしら。