問題タブ [fact]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
467 参照

list - チェックリストとデータベース [プロローグ]

リストと事実を比較できる述語を Prolog で開発する必要があります。つまり、リストに存在する製品の名前がす​​べてデータベース (事実) にもある場合は「はい」、そうでない場合は「いいえ」と答えなければなりません。述語は明らかに製品名のリストを受け取ります。現時点では、このコードを取得しています。

0 投票する
3 に答える
114 参照

prolog - Prolog-事実に関する情報が必要

次のような事実があったとしましょう。

これを誰かに説明したい場合、「猫はこの事実の最初の用語であり、マウスは2番目の用語です」と言うのは正しいでしょうか、それとも猫とマウスを原子と呼び、「猫は最初の用語です」と言うのでしょうか。事実内の原子とマウスは2番目です」。

0 投票する
1 に答える
666 参照

prolog - TurboPrologのSWIでの「保存」アナログ-Prolog

以前にconsultを介してロードされ、次にassertを介して追加されたファクトをファイルに保存する、 Turboの保存機能のSWIの類似物はありますか?

0 投票する
0 に答える
191 参照

sql - リレーショナルデータベースからファクトテーブルを作成する

1つの親テーブルと4つの子テーブルを持つリレーショナルデータベースからファクトテーブルレコードを取得しようとしています。

これは、BIソリューションのデータマートに移行することです。

現在のソリューションは、4つの左外部結合を持つSELECTステートメントです。4つのselectステートメントを個別に実行する場合、次の情報があります。

プライマリテーブル:786レコードの
PriテーブルとTbl1:7055レコードの
PriテーブルとTbl2:1227レコードの
PriテーブルとTbl3:18903レコードの
PriテーブルとTbl4:786レコード(1-1の関係)

ただし、Priを使用した場合Left-outer-join Tbl1 Left-outer-join Tbl2 Left-outer-join Tbl3 Left-outer-join Tbl4:950万件を超えるレコード。

これはこれを行う正しい方法ですか?この種の場合、950万は正しい出力ですか?ありがとう

コードはここにあります:

0 投票する
1 に答える
265 参照

scope - マップを使用してルール間でデータを共有する

これは単純なはずですが、それでも私は迷っています。ここに非常によく似た投稿があります:マップ内のDroolsルール間でデータを共有する方法は? しかし、それは私の問題を解決しません:

一連のルールがあり、それらを起動する前に、事実としてMap <String、Object>を挿入します。これらのルールでは、マップを使用して次のような結論を記述します。

ここで、これらの中間的な結論を他のルールで使用したいと思います。

問題は、ルールを実行すると、2番目のルールが最初のルールの結論を認識せず、実行されないように見えることです。ブレークポイントを設定して作業メモリーを分析しようとしましたが、実際、最初のルールが実行された後、マップには結論1、100が含まれます。結論としてupdate($ map)を作成してみましたが、無限ループが発生します。

なぜこれが機能しないのか、または私の問題に対する代替の解決策について何か考えはありますか?

ありがとう !

0 投票する
1 に答える
148 参照

prolog - Prologでクエリソリューションを取得するために使用されるすべてのファクトを取得するにはどうすればよいですか?

クエリソリューションを取得するために使用されたすべてのファクトを印刷しようとしていますが、統合に失敗した場合は何も印刷しないことを望んでいます。だから私はこれを書きます:

ただし、クエリを実行するa.と、悲しいことに次の出力が得られました。

誰かが、Prologにはクエリを実行するために使用されるすべての事実を表示するメカニズムが組み込まれていると言っているようです。彼は本当ですか?どうすれば正しい出力を得ることができますか?

0 投票する
1 に答える
1377 参照

ssas - SSAS は定期的なスナップショットであり、正しい選択です

私はSSASの初心者です。契約のステータスが時間の経過とともに変化する契約テーブルを持つデータベースがあります。これは契約ログに保存されます。ステータスは、長期間にわたる任意の組み合わせになる可能性があります。私が答える必要のある一連の質問は、特定のステータスの契約書の数と、時間の経過に伴うステータスの傾向を示すことです。私は Kimball を読んでいて、定期的なスナップショットが最適なようですが、ファクト テーブルの設計方法がわかりません。データをステータスごとに分割された期間に事前に集計しますか? 次に、SSAS でそれを操作する方法と、銀行の残高に似ているため、集計がどのように機能するかを説明します。ある程度の概念は理解できましたが、まだかなり混乱しています。

0 投票する
1 に答える
4829 参照

ssas - データウェアハウスでプロセスとステータスの履歴をモデル化する方法は?

ディメンションとして、プロセス(何)をワーカー(担当者)と「現在の」ステータスにリンクするという事実があるD_PROCESSD_WORKERしましょう。D_STATUSF_EVENT

プロセスステータスは時間とともに変化します。F_EVENTプロセス/ステータス/ワーカーごとに1行、またはプロセス/ワーカーごとに1行、および特定のプロセス/ワーカーのステータス変更ごとに「どこか別の場所」に1行を格納する必要がありますか?

私はDatawarehouseを初めて使用しますが、データモデル化に関連するベストプラクティス/チュートリアルを見つけるのは困難です。

0 投票する
1 に答える
110 参照

data-warehouse - ファクト テーブルとして編集可能なデータ

販売レポート システム用のデータ ウェアハウスを設計していますが、更新可能な販売計画データに問題があります。データは、代理キーとして時間、製品、販売者、指標として数量を持ちます。通常、この種のデータを使用してファクト テーブルを作成し、それに満足します。

私の問題は、販売計画が一定ではなく、販売期間中に編集でき、これらの変更を追跡する必要があることです。これは大きなテーブルなので、ディメンションがゆっくりと変化するディメンション テーブルとして扱うと、非常に巨大になります。一方、数量は正確な数でなければならず、計算に使用して、Raph Kimball によって提案されたミニディメンションが機能しないようにします。

このユースケースについて教えてください。

0 投票する
1 に答える
1686 参照

drools - Date を含む Drools json API 呼び出し (ルールエンジン)

Drools Json api を呼び出そうとしていますが、私の事実の 1 つは日付型です。そのためのjson文字列を作成する方法がわかりません。!!!!????????? :(

ここに私が持っているものがあります:

私の drl ファイル: パッケージ com.beachmint.common

Order orderId: Integer customerId: Integer total: java.math.BigDecimal cartId: Integer createdAt: java.util.Date productIds: java.util.ArrayList end

宣言 Customer customerId: Integer referrerId: Integer customerStatus: Integer createdAt: java.util.Date end

宣言ポイント ステータス: 文字列 カウント: 整数 customerId: 整数 理由: 文字列 ruleId: 文字列 end

宣言 イベント名: 文字列 storeId: 整数 end

rule 'Purchase Promo' ダイアレクト "mvel" when e : Event( 名前は "Purchase" と一致) o : Order( total > 0 , createdAt > "08-Oct-2012" , createdAt <= "01-Jan-2013" )

次に p.setCount( p.getCount() + 2000 );

日付を UTC と文字列 ('yMd) 形式で送信してみました。

createdAt":{"date":"2012-Jan-01"} createdAt": 1351637683 createdAt": "2012-Jan-01"

これらのどれも機能しません:(