データセット内で項目ごとの足し算や引き算は出来るはやったのでわかりますが例えばデータセット内で"HIDUKE"という項目があるとします。
中には1行目(19900813)や2行目(19990704)・・・・・・など。
それ現在の日付から引くことってできますか?
もちろんデータセット内で。
普通ならマスタをFillしたときHIDUKEの項目は上記の日付1行目(19900813)や2行目(19990704)が読み込まれると思います。
それをマスタからFillした時点でHIDUKEの項目は1行目(90220)2行目(180111)という風にはできないのでしょうか?
なぜこういうことをしたいかというと画面に表示するのはHIDUKEを出すのではなくて現在の日にちからHIDUKEを引いた値を出したいのです。
そしてソートで呼び出すとき計算した値順に並び替えるためです。
SQL Server、MySQL(4.1.1以降)、Accessなら
SQL文でDATEDIFFが使えるから、それで計算させて取得すれば良いのでは?
(カラム名はHIDUKEで取得するべきではない、そもそもエラーになるかも)
他のDBだと分からんが、最悪VB側でやるしかないかも
ちなみにDataSet自体で計算なんて事は出来ないはず
(2008だと、もしかしてLINQかなんかで出来たりするのか?)
当然、自力で計算してDataSetに入れる事は出来るけど、
それはDataSetでの計算とは言わないと思うし
(サブクラス作って計算、とかは また別の話ということで)
ツイート | ![]() |