とりあえず半歩

学んだことを1日1個、簡単なことでも良いから記録していきたい。

2015-01-01から1年間の記事一覧

汚くなったコンソールを綺麗にする

R

課題 コマンド実行して実行コマンドや結果が表示されているRのコンソールをクリアする。

フォルダ内のファイルをリストアップ

R

課題 Rで指定フォルダ内のファイルをリストアップする。

指定日数前の年月日を取る

課題 バッチで指定日数前の日付を取りたかったが、月をまたぐと大変面倒なため、VBScriptで実現する。

DiagrammeRを使ってデータフロー図を描く

R

課題 データの流れを可視化したいとの要望があり、データフローを描くことになった。 このデータフローは一定期間ごとに確認したいとの事だったので手書きは面倒くさい。 かと言って、アプリケーションを作りこむまでのものではないということだったので、 …

横棒グラフを描く

R

課題 ファンネルグラフを描きたいので、ggplot2パッケージの棒グラフを用いて実現する。

テーブル変数は小さなテーブル向きらしい

記録 テーブル値はあまり多行テーブルを扱うことに向いていないようだ。

OVER句はSS2012以上で使いたい

記録 SQL Server 2008 R2とSQL Server 2012ではOVER句で出来ることが大きく異なる。

ストアドプロシージャとビューとユーザー定義関数

課題 ストアドプロシージャとビューとユーザ定義関数について調べる。 一文で済ますには複雑で、定期的に繰り返すSELECT文を書くことになった。取り敢えずガリガリ書いてファイル保存して定期実行でも良いが、そのSELECT文の結果をほかの人も欲しがるとなる…

エラー時にログとダンプファイルを出力する

R

課題 Rのプログラムをバッチなどで実行中にエラーが発生した時、エラー内容がわかったりエラー時の状況をあとから終えたりすると原因を突き止めることに役立つ。そこでエラー時にログとダンプファイルを出力するような関数を定義する。 Rプログラムをコンソ…

与えられたレコードと一致するレコードがあるか(力技で)確認する

課題 DBのあるテーブルと構成の同じレコードが与えられた時、そのレコードの要素全てが一致するレコードがテーブル内に存在するか確認するクエリを書く。

実行しているバッチの存在するドライブやパス、バッチ名を得る方法

CMD

課題 バッチを実行しているフォルダパスを得たい。 その過程で実行しているバッチの存在するドライブ名や、パス、バッチ名を取得する方法を見つけたので覚えるために書く。

自分なりのggplot2のカスタムテーマ

R

課題 ggplot2でグラフを標準のまま出力して資料などに使うと「文字がちっせぇんだよ」とか「線とか点とかもう少しはっきりしない?」とか「背景が灰色とか見づらいんだが!」とか言われる。 ggplot2は点や線、文字の大きさやタイトル向きなどをカスタムでき…

例外処理の使い方について良い入門記事を見つけた

C#

課題 入力文字をパースできなかったら例外。ファイル読みに行こうとして失敗したら例外。などなど、取り敢えずうまく行かなかったら例外処理をしており、イマイチ使い方に気を使わずにいた。 たびたび「例外処理ってどういう時つかうんだろうか」と思うこと…

findstrコマンドで検索した結果を条件分岐に用いる

CMD

課題 バッチ処理にてファイル内に決められた文字列が存在するか検索し、その結果によって異なる処理をしたい。

主キーのないテーブルから重複レコードを削除する

課題 主キーがないことが原因で同一レコードが複数登録されているテーブルから重複レコードを削除し、テーブル内のレコードが全て唯一な状態にする。

ITemplateでカスタムテンプレート作成

C#

課題 GridViewのTemplateFieldに自前のテンプレートを用いる。 GridViewのFooterでデータ追加処理を実現するためにはTemplateFieldを用いることは以前調べた。GridViewの列を静的に用意するならばVisual Studioのデザイナを使ってしまえば簡単にTemplateFiel…

SQL Serverのデータインポートウィザードを使って日時データをインポートする

課題 SQL Serverインポートウィザードを使ってcsvのインポートを試みたところ、日時データでエラーが発生する。その理由を探った。(簡単だった)

ViewStateの復元タイミング

C#

課題 BoundFieldとTemplateFieldについて - とりあえず半歩 以前、上のような調査をしてて、その続きでTemplateFieldを使ったGridViewを動的に生成しようとしている。 行おうとした動的生成の手順を簡単にまとめると、 ButtonのClickイベントで表示するデー…

BoundFieldとTemplateFieldについて

C#

課題 DBから抽出したデータをGridViewで表示し、更新・削除・追加機能を実装することになった。 DBから抽出するデータは動的であるのでGridViewの表示もタグではなく、コード側で対応することになった。 それはそれとして、調べてみると表示・削除・更新なら…

GOとセミコロンってなんだろうか

課題 何となく使っていたGOと;(セミコロン)って一体なんだろうと思ったので調べることとした。

グループ毎に最大値や最小値を持つレコードを抽出する(その2)

課題 以前「グループ毎に最大値や最小値を持つレコードを抽出する」という記事をまとめた(下記リンク)。 2015-09-28 - とりあえず半歩 この時は自前のサンプルデータを用意して試していたが、コードが小奇麗になったくらいで実行時間などいまいち違いがわ…

サンプルデータベースを用意してアタッチする

課題 クエリのテストや学んだことを試したい時、サンプルデータベースがあるとすぐに試すことができて便利だと思う。 嬉しいことにMicrosoftはAdventureWorksというサンプルデータベースを用意してくれている。 これからの勉強のための準備として、今回はこ…

Web用Chart Controlでグラフを複数個並べる+軸を90度回転させたかった

C#

課題 Webフォーム用Chart Controlでグラフを複数個整列して表示する必要が出てきた。また、できればX軸を縦軸に、Y軸を横軸にしたい。 今回は調べただけなので調査結果だけ。

何度も使う中間テーブルに名前をつけてクエリを見やすくする

課題 クエリを書いていると、何度も同じ中間テーブルを書いている時がある。自分の場合、テーブル結合を幾つかしている時に多い。 同じ中間テーブルのクエリを何度も書いているとミスの元だし修正するにも手間だし見難いしで大変なので、共通テーブル式を使…

一時テーブルが存在していたら削除する

課題 SQL Server Management Studio上で一時テーブルを使ったクエリをテストしているとき、テスト前に毎回一時テーブルを手動で削除するのが面倒。テスト実行時に一時テーブルが存在していたら削除して作りなおすようにしたい。

rpartの見栄えを良くする

R

課題 mvpartパッケージがCRANから外されてそれなりに時間がたった。再登録されそうにもないし、rpartパッケージでも十分らしいからrpartパッケージを使おうと思う。ただ、rpartの見た目が少し物足りない。rpartの見栄えを良くするパッケージがいくつかあるよ…

複数レコードを一括挿入する

課題 INSERT文で複数レコードをテーブルに一括挿入する。 1レコード挿入するごとにINSERT文を1文書くのも大変なので、まとめて挿入したい。

グループ毎に最大値や最小値を持つレコードを抽出する

課題 グループ毎に最大値や最小値を持つレコードを抽出する。 少し前までJOINを使って実現してきたけれど、実行時間が長くて困っていた。データ抽出にかかる時間を短くしたい。 実行 実行環境はMicrosoft SQL Server 2008 R2 Express. 次に示すサンプルテー…

レコードの挿入・更新・削除とビューの作成・変更

課題 SELECT以外のレコード操作を覚える。 いつも「UPDATEの文法ってなんだっけか」とか「DELETEってこんな使い方で合ってるよね……?」と迷って調べて時間がかかる。文法を定着させて調べることに使っていた時間をほんのちょっと短縮しよう。 実行 []で囲ま…

一歩はつらいから半歩

何も覚えてない、何も学んでない そんな危機感、というより自分の無能さに辛くて嫌になって、このままじゃ何も学ばなくなり更に無能さに嘆き苦しむループに陥りそうな気がした。 できなかったことよりできたこと そんな時、ある人に「前向きに考えよう」と言…