2

Crystal Reportsの別のコマンドでコマンドの結果を使用することは可能ですか?

例として、私はコマンドを持っています

SELECT foo FROM bar WHERE foo2 IN (list)

command_1として保存しまし

SELECT xfoo FROM xbar WHERE xfoo2 IN (command_1.foo)

単純なケースでは、私はそれらを組み合わせることができることに気づきます

SELECT xfoo FROM xbar WHERE xfoo2 IN (SELECT foo FROM bar WHERE foo2 IN (list))

しかし、私の実際のケースでは、ネストされたSELECTが多すぎるためにエラーが発生します。

誰かが一般的な答えだけでなく特定の答えを出したい場合の私の実例:

次のように保存された既存のコマンドpnr

SELECT DISTINCT rem.pop_pid
FROM a_remiss rem
INNER JOIN a_bestall best ON rem.arem_id = best.arem_id
JOIN a_prov prov ON best.apro_id = prov.apro_id
WHERE prov.pro_provdat >= {ts '2006-01-01 00:00:00'}
AND prov.pro_provdat <= {ts '2011-12-31 23:59:59'}
AND best.ana_analyskod IN ('PKREAT', 'PKREA', 'PKREAN')
AND (
rem.pop_pid LIKE '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9] 1[89]'
OR rem.pop_pid LIKE '[01][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9] 20'
)

追加の新しいコマンドが必要でした:

SELECT arem_id, apro_id, ana_analyskod
FROM a_bestall
WHERE ana_analyskod IN('ABSBIK', 'BCRPS')
AND arem_id IN (
SELECT arem_id
FROM a_remiss
WHERE rem_ank_dttm >= {ts '2006-01-01 00:00:00'}
AND rem_ank_dttm <= {ts '2012-01-31 23:59:59'}
AND pop_pid IN pnr.pop_pid
)

編集:ネストされたSELECTが機能するようになったコードエラーを修正しましたが、コマンドをネストできると便利です。

4

1 に答える 1

1

短い答えはノーです。コマンドをネストすることはできません。

クエリ ツールで機能する構文を取得できる場合は、コマンドでも機能するはずです。

それでも構文エラーが発生する場合は、別のデータベース ドライバーの使用を検討してください。「ネイティブ」ドライバーは ODBC よりも優れた仕事をすることに気付きました。

于 2012-05-10T12:05:10.797 に答える