DOG」を買ってみました。550ページもあるなかなか分厚い本なんですが、1週間も経たないうちに読み終わるぐらいには熱心に読んでしまいました。今まで様々な会社の成り立ちに関する本を読んできました。Sportsはメーカーというよりかは商社のようなビジネスで、商習慣や上場に対する考え方なども今まで読んだ会社とは違うなぁと感じました。Knightの性格が悪すぎる!というものを見かけるんですが、人を貶めるようなことはしていないので、子ども心を忘れていないがためにそういう印象を与えているように思えました。小ネタも多く散りばめられていて、思わずクスッとしてしまう場面が数多くあります。Knightがなぜ無駄にクオリティが高いことに怒りながらも、模造していた人にNikeの靴の製造に携われないかと誘っているところです。Castleの木戸で脳内再生されました。Query昨日かなり重いクエリを流して帰り、今朝出社してから負荷を確認したところ400本近いクエリが遅延している状況を目の当たりにした私です。月初にやるべきではなかったなぁと反省しております。AppCenterというソフトウェアがあるのですが、この製品はSQLとJavaでクエリの実行やグラフの可視化を行うことができます。今のところ基本的にはSQLで書き、クエリをダイナミックに書き換えたいときなどはJavaを使っているのですが、とあるプロジェクトでデータがロードされていなかったら処理を失敗させたいという絶妙な要望があがりました。Javaなら簡単にかけますが、そのためだけに使いたいかというとうーん...となる感じですね。ちなみにSQLでもJavaでも1つの入力フォームしかないので、1つ目の処理が正常終了したら次へみたいなレベルの処理をちゃんとやりたい場合にはJavaで書く必要があります。帰りの電車で反省中に思いついたのが、サブクエリでcountをとってcaseでわざとランタイムエラーを発生させるという方法です。特別な関数は使わないのでPrestoで試してみました。date));上の状態でまだロードの終わっていない日付、例えば2018/1/1に以下のクエリを実行すると、サブクエリ内のcntは0になり、case内の条件がtrueになりcastが実行されます。数値ではなく文字をintegerにキャストしようとするのでエラーになることが確認できます。t;ちなみにPrestoだと以下のようなエラーメッセージが出力されます。INT特殊な方法は使っていないので、ほとんどのRDBMSで適用できるんじゃないかなと思っています。したジョブでやるのがベストではありますが、こういうトリッキーな方法や考え方はたまに役に立ったりするもんなので残しておきます。feat.森高千里をもじっているので最後にライブ映像を貼っておきます。みなさまどうぞご覧くださいませ。