問題タブ [entity-attribute-value]

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 投票する
5 に答える
53651 参照

sql - JOIN 構文での MySQL 相関サブクエリ

innertable.id = outertable.id を指定して、内部クエリに WHERE 条件を提供したいと考えています。ただし、MySQL (5.0.45) は「'where 句' の不明な列 'outertable.id'」を報告します。このタイプのクエリは可能ですか?

内部クエリは、GROUP BY を使用して行を列にピボットしています。これは完全に外側のクエリで実行できますが、追加の結合により追加のオーバーヘッドが発生する可能性があります。

別の方法として、内側のクエリで WHERE 条件を省略し、代わりに ON outertable.id = innerquery.id を指定することもできますが、内側のクエリの行セット全体をフェッチして、外側のクエリを再度結合することになり、非効率的です。

実際の SQL は次のようになります。

0 投票する
4 に答える
423 参照

database - プロパティ値データベース

私にはいくつかのオブジェクトがあり、それぞれに任意の数の共有された個別のプロパティと値のペアがあります(より具体的には、ファイルと、画像の幅や高さの値、音楽のアルバム/アーティスト/長さなどの関連するプロパティ)。ファイルなど)。特定のプロパティ/値(アルバムごとなど)、プロパティごとのグループなどを持つオブジェクトを検索できるようにしたいと思います。

このシナリオでは、どのようなデータベースを提案しますか?モジュール性(オンザフライでより多くのプロパティを追加する機能)と、共通のプロパティがすべてのプロパティの20%未満であるという事実により、正規化されたテーブルを使用する標準SQLは実際にはそれを削減しません。私はすでに「スキニーデータモデル」を使用して問題にアプローチしようとしました。しかし、私は深刻なスケーラビリティの問題に直面しました。

このシナリオ用に調整された特殊なデータベースはありますか(BSDライセンスのソリューションが推奨されます)?または、このために標準のRDBMを微調整する別の方法はありますか?

0 投票する
7 に答える
32552 参照

mysql - MySQL エンティティ属性値スキーマをピボットする方法

ファイルのすべてのメタデータ (つまり、ファイル名、作成者、タイトル、作成日) とカスタム メタデータ (ユーザーによってファイルに追加された、CustUseBy、CustSendBy など) を格納するテーブルを設計する必要があります。カスタム メタデータ フィールドの数を事前に設定することはできません。実際、ファイルに追加されたカスタム タグの種類と数を特定する唯一の方法は、テーブルに存在するものを調べることです。

これを格納するために、ベース テーブル (ファイルのすべての共通メタデータを含む)、Attributesテーブル (ファイルに設定できる追加のオプションの属性を保持する)、およびFileAttributesテーブル (ファイルの属性に値を割り当てる) を作成しました。

サンプルデータ:

今問題は、次のような方法でデータを表示したいということです:

この結果を生成するクエリは何ですか?

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

php - MagentoのaddFieldToFilterを使用して既存の列でフィルタリングする

仮定の状況。sales/ordergrand_totalがに等しいすべての順序でコレクションにデータを入力/ロードしたいと思いtotal_paidます。addFieldToFilter特定の値でフィルタリングするために使用できることはわかっていますが、このメソッドを使用して他のデータベース値でフィルタリングすることは可能ですか。そうでない場合、これを可能にするデータアクセスオブジェクトがMagentoシステムにありますか。

non-eav私が把握しているSQLの概念は次のとおりです。

これは純粋にオブジェクトメソッド呼び出しで行うことができますか、それともロード後のフィルタリングを行う必要がありますか?

ORM他のシステムはこれをどのように処理しますか?

0 投票する
4 に答える
1774 参照

sql - 複数の EAV 属性を別々の列で照会する

クエリを作成しようとして問題に直面しています。(これは私の前の質問から少し変更されています)

私のテーブルは次のようにレイアウトされています:

次のフィールドを表示する必要があります。

これは挑戦的な部分です:

tblTicketAttribute.Attribute= "Urgent" の場合、tblTicketAttribute.AttributeValue の値が UrgentPriority 列に表示されます。

tblTicketAttribute.Attribute= "Medium" の場合、tblTicketAttribute.AttributeValue の値が MediumPriority 列に表示されます。

tblTicketAttribute.Attribute= "Low" の場合、tblTicketAttribute.AttributeValue の値が LowPriority 列に表示されます。

tblTicketAttribute.Attribute= "Closed" の場合

tblTicketAttribute.Attribute の値には、「緊急」、「中」、「低」、「30 以上」、「60 以上」、「90 以上」、「クローズ」があります。

すべてのレコードを表示する必要はありません。「至急」「中」「低」のみ。

0 投票する
2 に答える
749 参照

sql-server - 履歴EAVデータベースからクエリを実行する最速の方法は何ですか

標準EAVスキーマ:エンティティID用に1列、属性ID用に1列、値ID用に1列。

履歴EAVスキーマ:時間/日付範囲の列を追加します

実行時に、特定の行が除外されます。属性ごとに、エンティティごとに0、1、または多数の行が返される場合があります。残りの各属性の最新の値のみが必要です。

現在のソリューションでは、SQL ServerのRank()関数を使用して各行にランクを付け、where句に「andrank=1」を付けています。

ただし、パフォーマンスは十分ではありません。分析中に、ランクの割り当ては非常に高速であることがわかりましたが、ランクに対してwhere句を実行するには、データの2回目のスキャンが必要であり、データセット全体がRAMに保持されます。

残りの属性行をランク付けし、最新のものだけを返す最も速い方法は何ですか?

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

asp.net - asp.netでBPMアプリケーションをどのように設計しますか?

シンプルなasp.net/sqlserver2000ベースのビジネスプロセス管理ツールを作成しました。このツールでは、ユーザーがシンプルな1列のフォームを作成し、プロセスにアタッチして、ルールとパスを定義できる機能があります。

動的に作成されたフォームコントロール値をEAVデザインテーブルに保存しますが、トランザクションが増加するにつれて、そのカスタムフォーム値のレポートに関するパフォーマンスの問題が発生します。私の質問は、BPMソリューションの主な要件がこの問題の代替案であるということです。そのユーザーはフォームを動的に作成します。Skelta/ultimus/K2.netのようなBPMの他の大手ベンダーの実装がこの要件を管理していると思いますか。xmlで私を救うことができますか?はいの場合、どのように、またはどのようにBPMアプリケーションのモデルを設計しますか

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

php - Magento ORM ドキュメント

ソースコード以外に、Magento ORM に関する詳細なドキュメントはありますか? 私は基本を理解しており、通常は Mage のコード ベースを掘り下げて Mage::Log 呼び出しを散らかし、機能するものを見つけ出すことができますが、モデルがどのように意図されているかについての高レベルの概要があれば、私の効率は大幅に向上します。使用する。集約メソッドはどのように機能するのか、参加する最良の方法は何か、モデルをいつ拡張する必要があるのか​​、eav モデルと非 eav モデルを使用するのに最適な時期など.

Django Model Documentationのようなものですが、Magento 用です。

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

schema - 顧客ごとに複数のユーザー定義属性が存在する可能性があるスキーマを作成する方法は?

私は、フィードバック/調査環境のようなものでユーザーに表示されるフィールドをクライアントが定義できるようにするアプリケーションに取り組んでいます。たとえば、ピッツェリアにはお気に入りのトッピングを求めるフィールドがあり、バーにはお気に入りのビールのブランドがあるかもしれません。

これらのフィールドは特定の顧客に依存しており、おそらく複製されることはないため、システムは顧客がこれらのフィールドを作成および変更できるようにする必要があります。似たようなお客様の分野に基づいて、お客様に提案を提示する方法があれば理想的です。たとえば、2 番目のピッツェリアのサインアップがある場合、管理ページでフィールドを定義すると、同様のビジネスが次の質問をすることを選択し、「サンプル」値のリストを提示することが示される場合があります。

Entity-Attribute-Value (EAV)これは、このテーブルのモデルの適切な候補でしょうか? 従来のリレーショナル モデルは、「user1」などと呼ばれる多くのフィールドを含むため機能しません。もちろん、これは非常に扱いにくいものです。

0 投票する
2 に答える
2989 参照

database - 汎用 DB テーブル

次の DB テーブル設計に名前はありますか。

基本的に、キーと値のペアを表す一般的な列があります。

ID | k1 | v1 | k2 | v2 | k3 | v3 | ....

1 | 名前 | サム | last_name| スミス | ヌル | ヌル | ...

私のアプリケーションでは、行が 1 つしかない多くのテーブルがあり、それらを X 個の列を持ち、各行が特異なテーブル行を表す汎用テーブルにマージしたいと考えています。

前もって感謝します。