外部データベースと保存された JMP テーブルに SQL クエリを実行するにはどうすればよいですか?こんにちは、
JMP スクリプト内で、保存された JMP テーブルと別のデータベース テーブルの両方にクエリを実行する必要がありますが、その方法を見つけたり、オンラインで解決策を見つけることができません。以下に簡略化されたコード例を示します。 問題は、データベースに接続すると、ローカルテーブルにクエリを実行できなくなることです。 外部データベースでの SQL クエリの後に JMP でテーブル結合を実行できることはわかっていますが、目標は、クエリ内の customer.jmp テーブルで指定された顧客のみを取得して、クエリに必要なデータ量を減らすことです。 JOIN 'cust'、JOIN 'Customers' などを試しました。
ご協力をよろしくお願いいたします。
// open JMP table
cust = Open( "***\JMP Tables\Customers.jmp");
//connect to DB
SQLConnection = Create database connection("DRIVER=*** SERVER=***; DATABASE=database; Uid=***;Pwd=***");
//Query both
PrePUSQL01 =
"
SELECT
T.CustomerID,
C.Inc
FROM database.dbo.table AS T
JOIN cust AS C ON C.CustomerID = T.CustomerID
WHERE C.Inc = '1'
"
;
dt = Execute SQL(SQLConnection,
PrePUSQL01,
"dt"
);Re: 外部データベースと保存された JMP テーブルに SQL クエリを実行する方法は?私の理解が正しければ、顧客のリストを含む JMP データ テーブルがあり、それらの顧客に一致する行をデータベースから取得したいと考えています。
これを行うには、列値の一致クエリビルダーのフィルター。

あるよドキュメントの例列一致フィルターの使用方法については、「列一致フィルター」を参照してください。
Re: 外部データベースと保存された JMP テーブルに SQL クエリを実行する方法は?Chris の言うとおりです。IN リストを作成し、それを SQL に含める必要があります。この会話役立つかもしれません。
Re: 外部データベースと保存された JMP テーブルに SQL クエリを実行する方法は?こんにちは、
GetValues を使用して (以下の 1 行目など) JMP テーブルから CustomerID 値を読み取り、そのリストを SQL コードに挿入する必要があると思います (WHERE 句に IN 演算子を使用)。
custIDList = :CustID << GetValues;
これは完全なコードではありませんが、正しい方向に少し前進したものです。
SQL コードにリストを挿入するには、小さな JSL を使用する必要がありますが、少なくとも Customer.JMP ファイルに ID を持つ顧客からの情報のみを取得できます。 その後、JMP 内で Join を使用して 2 つのセットをマージできます。
お役に立てば幸いです。
クリス