問題タブ [relational-division]
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.
sql - 厳密なリレーショナル代数でクエリを作成する (AS IN NOT SQL/MYSQL)
したがって、次の 3 つの関係があります。
テーブル メンバー
メンバー(member_id、名前、都市、州)
member_id は主キーです
借りたテーブル
借りた(borrow_id, lib_id, member_id)
ここで、borrow_id は主キーです
テーブル ライブラリ
ライブラリ (lib_id、lib_address、lib_city、lib_state)
lib_id は主キーです
lib_id と member_id の両方が外部キーです
そのため、市内のすべての図書館で本を借りたメンバーの member_id をすべて検索するクエリを作成しようとしています。この意味は
私は関係分割を使用することを考えていました。たとえば、member_id と、本を借りたすべての lib_id からなる関係があるとします。そして、これを、そのメンバーの都市のすべての lib_id で構成される関係で分割します。
しかし、これを関係代数的にどう書けばよいのか、私は混乱しています。
mysql/sql では非常に簡単ですが、リレーショナル代数への変換で行き詰まります。
sql - リストのすべての値を含むグループ化された行を表示するためのSQLクエリ
SQLクエリ
結果は1001cozになり、すべての値が注文テーブルと一致します。
PRODUCTテーブルは時間の経過とともに変化する可能性があります。
誰が私からすべての製品を購入したのか知りたいです。
ありがとう!
sql - すべての一致を含む単純な SQL 選択
SQL の質問: 2 つの列を持つテーブルがあります:ProductId
とCatId
渡されたすべての s に属する製品を選択したいと考えていますCatId
。
たとえば、これは私のテーブルです:
合格した場合2,3,4
、結果は になります1129
。
私が合格した場合2,3
、結果は1130
(1129ではなく、渡されたすべてのCatIdsに属している必要があるため、それ以下でもそれ以上でもありません)
これをどのように達成できるか考えていますか? IN
では動作しAND
ません。IN
ではOR
目的を果たしません。
ありがとう。
sql - PostgreSQL - "result IN ALL OF" をクエリする方法は?
私は PostgreSQL を初めて使用し、次のクエリに問題があります。
このクエリは基本的に機能していますが、「relevant_mannschaften」では、現在、少なくとも 1 つの bergefahrzeug を含む related_einsatz にある各 mannschaft を選択しています。
これの代わりに、bergefahrzeug からの related_einsatz WITH EACH にあった各 mannschaft を「relevant_mannschaften」に選択したいと思います。
この変更を定式化する方法を知っている人はいますか?
sql - 異なる ID を異なる値でクエリしますか?
ゴルフ データベースのクエリを作成しようとしています。statisticID = 1
を持っていて、p2sStatistic > 65
も持ってstatisticID = 3
いるプレイヤーを返す必要がありp2sStatistic > 295
ます。
1つstatisticID
は走行距離、もう1つは精度などです。次のことを試しましたが、うまくいかず、オンラインで答えが見つからないようです。ビューを実行せずにこれを行うにはどうすればよいですか?
http://i.imgur.com/o8epk.png - db の写真
この 2 つの条件を満たすプレイヤーのリストを出力するだけです。
sql - 同じ属性の「リスト」を持つテーブルを転置
列が繰り返されるテーブルを転置することは可能ですか?
既存のテーブル:
に基づくクロス集計またはソリューション
繰り返される属性の最後の一致は常に一致するため、このシナリオには適用されません。
質問の本文で検索を実行したいのですが、転置された表がないと方法がわかりません。
たとえば、user_id を見つけたいのですが、question1='...' AND question2='...'
sql - トリッキーなSQLクエリ-代替サプライヤーの検索(リレーショナル部門)
これは私が本から得た質問です(どちらを覚えていないか)、それは次のようになります:
3つのテーブルがあります。
- サプライヤー(
supId, name
) - 製品(
prodId, name
) - 在庫(
supId, prodId
)
1つのクエリで、サプライヤXが持っているすべての製品(またはそれ以上)を在庫に持っているすべてのサプライヤを見つける必要があります(サプライヤXが持っているとしましょうsupId=1
)。
(したがって、サプライヤ1の在庫にバナナとリンゴがある場合は、少なくともバナナとリンゴを扱っているすべてのサプライヤを見つける必要があります)
標準SQLのみ(結合を含む)を使用できます。
どうやらこれは既知の問題/質問です、あなたはこの質問をチェックする必要があります: SQLの結果をhas-many-through関係でフィルタリングする方法 (優れたソリューションと分析)
mysql - MySQLは、配列に一致するテーブルから関連するすべてのIDを取得します
配列内のすべてのアイテムと一致する場合、テーブルからすべての productID を取得しようとしているときに問題に直面しています。この場合、ユーザーが検索したすべての成分が含まれている場合にのみ製品を返します。
表はこんな感じ
主な情報が格納されている製品テーブルからこのテーブルを結合します。クエリの目的は、すべての成分 ID が指定された配列と一致する場合にのみ、製品 ID を取得することです。使用してみましWHERE ingredientID IN(1,5,6)
たが、常に OR ステートメントであることが判明し、成分のいずれかが一致するすべての ID が返されます。たとえば、(1,5,6) または (5,6) を渡すと製品 ID 411 が返されますが、(2,5,6) を渡すと返されません。
私が試したクエリは次のようになります (簡略化すると、ブランドやカテゴリなどの他の関係への 5 方向の結合の一部です)
しかし、結果には 418 も含まれています。一致させるにはどうすればよいですか?問題をわかりやすい方法で説明できたことを願っています。質問するために頭を悩ませるのは本当に難しいです。
mysql - 多くの要素に対して IN
私はテーブルを持っています:
テーブルサイト
テーブルウィジェット
テーブル SiteWidget
コメント (2) とメール (4) があるすべてのサイトを取得したいと思います。
私は試します:
しかし、これは私にstackoverflow(2、4 - OK)、google.com(2 - NOT OK - 4なし)、yahoo.com(4 - NOT OK、2なし)、およびcnn.com(2、4 - OK)を返します。2 と 4 ですべてのサイトを取得するにはどうすればよいですか? 一人じゃなくていつも一緒。
mysql - MYSQL 選択カウント関係除算
私は mysql
1にこのテーブルを持っています。
この例では、entity_id=6 のみが field_tags_tid=2 および field_tags_tid=7 と一致するため、結果は 1 になります。