[Seasar-user:20138] Re: 【DBFlute】 (Query)DerivedReferrerについて

金子 雄一 [E-MAIL ADDRESS DELETED]
2010年 9月 10日 (金) 15:12:08 JST


金子です。

一通り動かしてみましたが、
今のところ、予期した通りの動きです。

が、肝心なことを忘れてました…。
子テーブルなので、必ずしも、レコードがあるわけでないのでした…。

業務的には、返品業務の実装をしています。

で、現状、どの部分で、この機能を欲したかというと、
返品をする対象(つまり、売上データ)を検索検索する部分です。

基本的には、売上データを検索すればよいのですが、
全額返品している場合には、検索対象から外すという処理です。

返品そのものがない場合(たぶん、ほとんどが該当)は、
返品テーブルにデータがないので・・・・。
という感じです。

なので、CBの範疇かが、怪しいのですが、
deriverの機能で、sum(),max(),min() 等ができるようになっていますが、
ここに、coalesce関数をつける・つけないを選択できようには、ならないでしょ 
うか?
( coalesce(sum(ColB),0)とすれば、子テーブルのレコードがない場合は、0にな 
るので。ただし、そん座していない場合は、検索結果として取得できてはいけな 
い場合もあるかと思いますので、選択できればよいのかなと。coalesceの第2引 
数をどう渡す?という問題もあるかと思いますので、実は、厳しいのかもしれま 
せんが・・・・。)

CBの範疇や、DBFluteとしてのポリシーもあるかと思いますので、
それを破らない範囲であれば、対応を検討していただけると、
ありがたく思います。


ご不明な点がありましたら、ご連絡ください。
以上、よろしくお願いいたします。

(2010/09/10 6:21), kubo wrote:
> 久保(jflute)です。
>
> DBFlute-0.9.7.4-01-SNAPSHOTを使ってみて下さい。
> (モジュール、ランタイム両方)
>
> まだ、各種例外処理が入っていないですが、
> ColumnQueryの中で(Specify)DerivedReferrerが利用できます。
> aliasName には固定で null を入れて下さい。
>
>> where
>>   数字 = max(文字型カラム)
>
> これは、もともとの ColumnQuery でも、
> コンパイルレベルでの抑制はできないので同じことかと。
> 高度な機能に関しては、この辺は割り切りを入れています。
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user


-- 
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
金子 雄一  Yuichi Kaneko
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆


Seasar-user メーリングリストの案内