畑仕事

筋肉痛の原因はこの畑仕事です。とはいうものの、土いじりだけですが。久々の肉体労働で腰が痛いです。
約50m近くを耕し、肥料を蒔き、土をならすといった作業を4時間くらいしました。スコップで堅くなった土を有る程度掘り起こした上で耕耘機で土をさらさらにします。だんだんさらさらになっていくのは面白いです。しかし、体力が予想以上に落ちてます。
4月からは体をもっと動かさないとまずいと痛感しました。

護身

畑仕事は近くに住んでいる姪達も手伝ってくれました(半分邪魔してましたが(^^;)
小学生の姪と肥料を一緒に蒔いているときに話したんですが合気道を習い始めたそうです。全然似合わないのですが、最近の状況を考えるともっともだなぁと思います。
以前、営業周りから帰社中に小学生達が集団下校してたのですが、その全てのランドセルに防犯ブザーがぶら下がっていたのを見て、少し寂しい気持ちになりました。
親として何ができるか考えなければならないと思います。

あんなにツラかったデスマがあっという間に解決しました!理由はこれ→SQL書き方ドリル

すらすらと手が動くようになるSQL書き方ドリル

すらすらと手が動くようになるSQL書き方ドリル

・・・とサブリミナルに協力してみる(w
さて、ちゃんと手を動かすことなくぱらぱらとめくってみただけですが(爆)、うん、いいですよ、これ。SQLに関する本って、リファレンス系か学術的っぽい内容かで開発にすぐに活かせるものがなかなか見つかりません。超初心者を中級者の手前くらいまで押し上げるような本がないんですよ。僕が新人の頃に探していた趣向の本がやった出たなという感じです。
簡単なSQLはリファレンス等をみればすぐ書けるようになりますが、ちょっと難しくなるとお手上げです。何をどうすればよいか、「How」が全く分からないのです。結局、保守・運用時代に大量のSQLをメンテナンスする機会があったお陰でなんとなーくできるようになっていました。また、ORACLE MASTERの試験勉強を通じてSQL実行時にどんなことをやっているかRDBMS内部の動きも理解したのも結構有効だったと思います(ここが理解できないとパフォーマンスを無視したSQLを書きまくることになる)。
ちなみに個人的にやっているクエリーの書き順はこんな感じ。

  • 対象となるエンティティを特定する(FROM句)
  • 特定したエンティティの中で取得するカラムを確認する(SELECT句)
  • エンティティを関連づけるカラムを確認し、結合条件を考える(WHERE句)
  • その他の絞り込み条件の記述方法を決める(WHERE句)
  • ソート順を決める(ORDER BY句)

今でも、複雑なクエリーを書く場合は、対象となるエンティティの部分だけでERDっぽい絵を描いてそれからSQLを書き始めます。後輩に教えるときも効果抜群です。

あと、SQL文のインデントも重要ですね。綺麗なコードを書くのが重要なように、綺麗なSQLを書くこともすごく大切です。長いSQLを書いていくと、1行1カラムってのがメンテナンスしやすいんですよね。特にカラムを複数個記述する場合は、カラムの先頭にカンマをつけるのがポイントです。これだけでSQL実行時のエラーがかなり防げます。

最後にこの本への要望としては、改訂版が出るときには、付録として超長くて複雑なSQLの穴埋め形式で解答させるような問題も載せて欲しいです。

今使っているSQLエディタ

会社ではもっぱらORACLEなのですが、今お気に入りのSQLエディタはこれ。

  • OSqlEdit(SQLエディタ。SQLコード記入支援、タブ切替、整形、オブジェクト一覧表示等便利な機能がたくさん)
  • OSqlGrid(更新対象テーブルを選択後、Excelみたいにダイレクトに編集できる)

「ここ(A.Ogawa's Home)」からダウンロードできます。シェアウェアなんですが、約4千円でこれだけの高機能がついてくるのはすばらしいと思います。さくさく動きますしね。オススメです。
なお、PostgreSQL版のPSqlEdit、PSqlGridはフリーのようです。PostgreSQLをお使いの方は試してみてはいかがでしょうか。