dblinkが使えないと、必要なデータベースへの接続をして、取得した値を配列に入れて処理するか、連結した文字列を生成して、別のデータベースへの接続をして・・・とするしかなくなるのが、作る側からすると面倒です。
photo credit: jimgris via photopin cc
今回の仕事のテーブル構成で、同一データベースであれば、外部結合(OUTER JOIN)をして、WHEREで絞り込めば目的のデータが取得できます。
異なるデータベースでは、配列に格納された別のデータベースの値を使って絞りこんだりしないといけません。
制限された環境でもベストを尽くすのが仕事ですが、楽ができることがわかっているのに、それができないのは面倒な気持ちが先に立ってしまいます。
今日作業した結果、3重ループで処理しないと、目的のデータが取得できないことがわかって、今日は方向性の確認だけに留めました。
この仕事は、お客さんの環境が外部ネットワークへの接続制限された環境で、テストデータも貰えないので、自社での作りこみに限界があります。
今日得た方向性で作りこみをして、次回のお客さん環境での動作確認で、微調整で済ませられるように仕事を進めていきたいと考えています。