問題タブ [rdbms]

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

tags - マシン タグのデータベース スキーマ?

マシン タグはより正確なタグです: http://www.flickr.com/groups/api/discuss/72157594497877875。基本的に、ユーザーは object:property=value の形式でオブジェクトとして何でもタグ付けできます。

これを実装する rdbms スキーマに関するヒントはありますか? 誰かがすでにこれに手を出しているかどうか疑問に思っています. スキーマはrdfトリプルをrdbmsに実装するのと非常に似ていると思います

0 投票する
11 に答える
135208 参照

sql - すべてのテーブルを削除するコマンド

SQLite ですべてのテーブルを削除するコマンドは何ですか?

同様に、すべてのインデックスを削除したいと思います。

0 投票する
9 に答える
14730 参照

rdbms - データベース テーブルの主キーの最大数はいくつですか?

データベース テーブルの主キーの最大数はいくつですか?

0 投票する
5 に答える
12705 参照

database - 条件付き論理式/ルールをデータベースに保存する

RDBMS を使用して論理式を格納するにはどうすればよいですか?

オブジェクトにタグを付けて、それらのタグに基づいて真実のステートメントを作成できるようにしたいと考えています。(これらは仮想タグと見なされる場合があります。)

タグ
new
for_sale
used
offer

ルール
second_hand_goods = (!new or used) and for_sale
new_offer = new and offer
second_hand_offer = second_hand_goods and offer

  • ルールは、タグと他のルールの両方を参照できる必要があります。
  • 休止状態から簡単にアクセスできるスキーマが望ましいでしょう。
  • できれば、1 回の選択/呼び出しでルール全体を取得できますか?

データベースに式やビジネス ルールをどのように格納していますか?

前もって感謝します。

更新
明確にするために、ルールはデータベースによって内部的に使用されるのではなく、これらのタグとルールを永続化する必要がある外部アプリケーションによって作成および使用されます。ありがとう。

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

sql - MySQL でのランキング、頻繁な更新と大規模なデータ セットで最高のパフォーマンスを得るにはどうすればよいですか?

非常に大きなテーブルでグループ化されたランキングが必要です。この問題の解決策がいくつか見つかりました。たとえば、この投稿や Web 上の他の場所です。ただし、これらのソリューションの最悪の場合の複雑さを把握することはできません。特定の問題は、各行に多数のポイントと関連付けられた名前が含まれるテーブルで構成されています。1~4等のランク間隔をリクエストできるようにしたい。以下にいくつかのデータ例を示します。

これらの値を使用して、次の「ランキング」が作成されます。

また、クエリ ID で次の間隔を作成できるはずです: 2-5 ランクを与える: 1、3、4、および 4。

データベースには約 300 万件のレコードが保持されているため、できれば log(n) よりも複雑なソリューションは避けたいと考えています。データベースでは常に更新と挿入が行われるため、これらのアクションも log(n) の複雑さで実行する必要があります。それが可能かどうかはわかりませんが、しばらくの間、頭を抱えてみました。二分探索が可能であるという結論に達しましたが、これを行うクエリを作成できませんでした。MySQL サーバーを使用しています。

フィルタリングの疑似コードがどのように機能するかについて詳しく説明します。まず、(points, name) のインデックスが必要です。入力としてfromrankとtilrankを与えます。データベース内のレコードの総数は n です。擬似コードは次のようになります。

中央値を見つけ、この値よりも少ない行を数えます (この数は、同じ量のポイントを持つものを考慮せずに、ランクの大まかな推定値を示します)。返された数値が fromrank 区切り文字よりも大きい場合、前半を細分化し、中央値を見つけます。fromrank を開始するポイントの量が特定されるまで、これを続けます。次に、名前 index を使用してそのポイント数内で同じことを行い、正しい行に到達するまで中央値を見つけます。ティルランクについてもまったく同じことを行います。

結果は log(n) 数のサブディビジョンになるはずです。したがって、中央値とカウントを log(n) 時間で作成できる場合、最悪の場合の複雑さ log(n) で問題を解決できるはずです。私が間違っている場合は修正してください。

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

mysql - MySQLで中央値を見つけてカウントを行うことの複雑さは何ですか?

次の2つの操作の複雑さを知りたいです。最初のケースは、インデックスが設定されている列で並べ替えて、次のように特定の数値より下または上のすべての値のカウントを要求するカウントです。

もう1つのケースは、中央値演算に関するものです。中央値とは、(int)n / 2の行の値を見つけることを意味します。ここで、nはテーブル内の行数です。この例は次のようになります(ここでもcol1にインデックスがあります)。

これらのケースの最悪の場合の複雑さは何ですか?

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

mysql - データベース設計の問題-異なるカテゴリの複数のスコア

衣料品のデータベースがあるとします。他の多くのフィールドに加えて、データベースは製品ごとに異なるカテゴリの評価(10点満点)を保存する必要があります。

たとえば、1つのカテゴリは「機会」である可能性があります。機会は次のようになります。

オフィスに着る結婚式に着るデートに着る...葬儀に着る

各製品には、これらのそれぞれについて10点満点のスコアを割り当てる必要があります。したがって、1つの製品には次のものがあります。

オフィス:5結婚式:7日付:10葬儀:0

これは、アイテムが陽気で、控えめすぎず、フォーマルすぎないことを示しています。

このようなカテゴリは多数あり、これらは検索アルゴリズムの一部として使用されるため、速度が問題になる可能性があります。また、製品テーブルが大きくなりたくありません。これは、各応答に独自の列があるため、これを製品テーブルに格納することに不安があることを意味します。

結合のある別のテーブルを除いて、おそらくこの方法で格納しますか?適度に柔軟でエレガントなソリューションを探しているだけです。

はっきりしない場合はお知らせください。

PSそれが違いを生むならMySQLを使用しています...

編集:categoryテーブルとproduct_id、category_id、scoreの結合テーブルがうまく機能するとは思いません。結合内の各スコア列(たとえば、wedding_scoreなど)にエイリアスとして名前を付けるか、複数のスコア列を返す必要があります(カテゴリごとに1つ)。

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

java - 休止状態: 識別子

休止状態を使用する場合:

各エンティティの ID または複合 ID を特定する必要があります。主キーも複合キーもなしでテーブルを使用したい場合はどうすればよいでしょうか ...

事前にサンクス