問題タブ [relational-algebra]
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.
relational-algebra - 30 歳以上の人が食べるすべてのピザを提供しているすべてのピザ屋を見つける方法は?
私はスタンフォード データベース コースに従っていますが、関係代数のみを使用して、30 歳以上の人々が食べるすべてのピザを提供するすべてのピザ屋を見つけるという質問があります。
この問題は、4 つの関係を持つ小さなデータベースで構成されています。
私は、30 歳以上の人がどのピザを食べているかを調べて、それらの交差積を作成する方法を知っているので、どのピザ屋が両方を持っているかを調べることができました。
それらのピザを提供するすべてのピザ屋のリストを作成できますが、組み合わせが 1 つしかないピザ屋 (ドミノなど) を削除する方法がわかりません。
Q&A フォーラムでは、除算を使用するように指示され、いくつかのプレゼンテーションを紹介されています。アクションの結果がどうなるかはわかりますが、式をリレーショナル代数構文に変換する方法がよくわかりません。
うまくいけば解決策を完全に与えずに、私が欠けているものを誰かが説明してくれますか?
sql - 関係代数-述語なしで選択
関係代数については知っていますが、そのselect
部分に関しては、特定の条件がない場合はどうすればよいでしょうか。
たとえば、Hotels
テーブルがあり、その結果を出力したいだけです。
私はただ使うべきですか、それとも私は???σ(Hotels)
のようなものを置く必要がありますか?σALL(Hotels)
あなたの助けが必要です!
database - シータ結合、等結合、自然結合の違い
シータ結合、等結合、自然結合に関しては、関係代数を理解するのに苦労しています。誰かが私がそれをよりよく理解するのを手伝ってくれませんか?シータ結合で=記号を使用する場合、自然結合を使用するのとまったく同じですか?
sql - SQLクエリを関係代数に変換する
SQLクエリを関係代数に変換するのに助けが必要です。
SQLクエリは次のとおりです。
IN
上記の例のサブクエリが原因でスタックしています。
このSQLクエリを関係代数で表現する方法を誰かに教えてもらえますか?
どうもありがとう。
編集:これが関係代数で提案された解決策です。これは正しいです?SQLクエリを再現しますか?
Scodes←ΠServerCode(σCustomerCode= '102'(予定))
Ccodes←ΠCustomerCode(Appointment⋉Scodes)
結果←(顧客⋉Ccodes)
sql - クエリ言語に依存しないオープンソースのリレーショナル ストレージ エンジンはありますか?
クリストファー・デイトの著書Database in Depth: Relational Theory for Practitionersから、適切な関係代数を研究しています。本全体を通して、彼は理論を伝えるために彼とヒュー・ダーウェンが思いついた言語を使用しています —チュートリアル D . 一般に、チュートリアル D は非常に実行可能なクエリ言語であり、SQL よりもはるかに柔軟であると思います。 SQL。
これは、何かを基本的なものにするだけでも膨大な作業であることに気づきました。SQL の意味でテーブルを表さず、リレーショナルの意味でリレーションを表し、特定のクエリを想定しない既存のストレージ システムが利用可能かどうか疑問に思います。 language はデータへのアクセスに使用されますがproduct
、join
、intersect
、union
、project
などの低レベル関数を提供するだけです (クエリ言語レベルではなく、C レベルで)。
私は理にかなっていますか?:) 基本的に、私はこのようなものを取り、その前にチュートリアル D (または同様の) クエリ インターフェイスを貼り付けたいと思います。
すべてをメモリ内で実行するのは非常に簡単ですが、ディスク上のデータ構造をやや効率的な方法で表現することはかなり難しく、おそらく真剣に調査しなければ頭がいっぱいです。
sql - 取り外し可能な外部キーを作成するにはどうすればよいですか?
基本的に、状況は次のようになります(簡略化された擬似コード)。
私は2つのテーブルの人と国を持っています。
人物テーブル:
カントリーテーブル:
クライアントは、カントリーテーブルの内容を制御できるため、リストに郡を追加および削除できます。この国の値は、人物を作成するときにドロップダウンリストに表示されます。人が作成されると、国の文字列の値が人の行の国の列に挿入されます。
私にとって、Personは国への外部キー参照を持つ必要があることは理にかなっていますが、クライアントが国テーブルに表示される内容を制御できるため、使用済みの国を削除することはできないため、それらは別々のテーブルとして保持されます(参照整合性とすべて)。これは私の同僚がこの場合外部キーを使用しないようにした議論ですが、この問題にはもっと良い解決策があるはずだと思います。それで、私の同僚は正しいですか、それとももっと良い解決策がありますか?
クライアントはcountryテーブルの値を追加および削除できますが、countryテーブルから値が削除された場合、その値を使用した作成者はその値を保持する必要があります。
join - 関数の奇妙な結果 -- 何が起きているのか?
の結合機能を使用していclojure.set
ます。 join
with two parameters は、自然な結合を行うことになっています。
それをロードします:
これは理にかなっています-結合のどちらかの側に0行がある場合、結果は次のようになります:
これも理にかなっています-同じ名前の列(それらのすべて0 :))は同じ値を持ちます:
ここで同じこと:
しかし、ここで私は迷子になります:
先程入会{:a 1 :b 2}
して列に並びました。{}
私は何が欠けていますか?
mysql - 関係代数から SQL へ
このスキーマを持つ:
翻訳Patient (join sign) pat_id(date>=1-1-2005^ date<1-1-2006(Visit))
する必要があり、2005 年 1 月 1 日から 2006 年 1 月 1 日の間に医者を訪れた患者を選択することを意味すると考えたので、次のクエリを作成しました。
関係代数ステートメントは私が考えたものを意味し、SQL クエリは正しい結果を返しますか?
relational-algebra - SQL をリレーショナル代数に変換する
次の 2 つの SQL ステートメントをリレーショナル代数に変換するのを手伝ってくれる人はいますか?
1)
2)
sql - これらの2つのクエリが異なるのはなぜですか?
サッカーとチェスを購読しているがテニスは購読していない従業員の詳細を表示します。
最初のものは正しい結果を与えます。