問題タブ [left-join]
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.
mysql - この LEFT JOIN が他のテーブルに何もないレコードを削除するのはなぜですか?
MySQL の左結合の問題があります。
参加しようとしているテーブルが 3 つあります。
人物表:
学生テーブル:
インシデント テーブル:
私が選択しようとしているのは、9 年生の各生徒の名、姓、およびインシデントの数です。
クエリでの私の最善の試みは次のとおりです。
しかし、それは私が望むものではないインシデントのない学生を無視します - それらは表示されるべきですが、カウントは 0 です。
私はおそらく左結合を誤解していましたが、本質的に私がやろうとしていることは何だと思いましたか?
ご協力いただきありがとうございます、
アダム
mysql - Table1 の 2 つの列を Table 2 に結合する
table1 列を table 2 の 2 列にどのように参照しますか
正確な50行のテーブル「状態」を作成しました
' Wedding ' テーブルで (weddingState,contactState) を関連付けようとしています
これは私が作成したステートメントですが、一番上のWeddingStateに正しく参加するだけです - その下の INNER Join を気にしないようです...
選択する *
結婚式から
INNER JOIN は s1 ON 結婚式として述べています。WeddingState = s1.StateId //結婚の状態
INNER JOIN は s2 ON weddings.ContactState = s2.StateId //花嫁の連絡先状態として述べています
WHERE weddings.weddingid="094829292"
sql - 2 つのカラムでの左外部結合のパフォーマンスの問題
次の形式のような SQL クエリを使用しています。
そして、戻るのに少なくとも4分かかるため、遅すぎるか、何かがデッドロックしています. これを次のように変更するとします。
その後、正常に動作します(ただし、正しい数の列が返されません)。これをスピードアップする方法はありますか?
UPDATE : 後者のクエリの最後の 2 行を切り替えると、同じことが行われます。
更新 2: これらは実際に私が参加しているビューです。残念ながら、それらは私が制御できないデータベース上にあるため、インデックスを (簡単に) 変更することはできません。ただし、これはインデックス作成の問題であることに同意する傾向があります。私が知らないこのクエリを調整する魔法の方法がある場合に備えて、回答を受け入れる前に少し待ちます。それ以外の場合は、現在の回答のいずれかを受け入れて、やりたいことを行う別の方法を見つけようとします。これまでお世話になりました。
sql-server-2005 - SQL の順序付けと左外部結合の順序が正しくありません
2 つのテーブルを結合し、最初のテーブルで並べ替えるビューがあります。順序が正しくないことを除いて。ときどきレコードが欠落し、最後にそれらのレコードのほとんどが順番に存在し、その最後に残りのレコードが順番に存在します。などの記録がありますので、
私の見解は以下です。参加する前に注文する必要がありますか? 私は何を間違っていますか?(私はこのビューを取得しましたが、別の db インスタンスのまったく同じビューが正しく機能します。)
(編集) ソートフィールドの型は [ID] [int] NOT NULL IDENTITY(1, 1),
mysql - MySQL 結合クエリのヘルプ
基本的に、次のようなmysqlクエリがあります。
そして、投稿テーブルからタイトルを取得し、投票テーブルから現在の投票値を取得する必要があります。
現時点では、投票が行われない限り、投票は投票テーブルに保存されません。したがって、投票数が 0 のすべての投稿は投票テーブルに含まれていません。
これにより、投稿 ID = 投票値 ID であるタイトルと投票値を取得しようとしているというエラーが発生します。投票テーブルにレコードがない場合、値は NULL または 0 として返されるはずですが、現時点ではクエリ全体が null として返されるため、タイトルを返すことさえできません。
これをすべて1つのクエリで修正するにはどうすればよいですか? 複数のクエリを使用する必要はありません...ありがとう:)
c# - LINQ 内部結合と左結合
拡張構文を使用して、私が持っている 2 つのリストで LINQ を使用して左結合を作成しようとしています。以下はマイクロソフトのヘルプからのものですが、ペット リストに要素がないことを示すために修正しました。私が最終的に得ているのは、0要素のリストです。これは、内部結合が行われているためだと思います。最終的に作成したいのは、3 つの要素 (3 つの Person オブジェクト) のリストで、欠落している要素には null データが入力されています。つまり、左結合です。これは可能ですか?
linq-to-entities - LINQ to Entities、親テーブルからすべてのレコードを返す方法は?
Linq to Entities を使用して、親テーブルからすべてのレコードを選択できません。
これは単純な DB 設計です (下の画像)。
画像リンク(デッドリンク)
これは、Linq to Entities または Linq to SQL を使用した正確な出力です (下の画像)。
画像リンク(デッドリンク)
Linq to Entities または Linq To Sql を使用すると、外部キー関係を持つ子テーブルからのみレコードを取得できます。上記のように null 値を取得できません。
を使用したときと同じように null 値を表示したいleft outer join
。
助けてくれてありがとう。
sql - SQL クエリを最適化する
このクエリを最適化するためにさらに何ができますか?
私はMySQLを使用しています
ありがとう
linq-to-entities - Linq to Entities 親からすべてのレコードを返す方法は?
従業員テーブル
Employee_ID int
Employee_Name varchar(50)
販売テーブル:
Sales_ID int
Employee_ID int
Sale_Amount money
標準 SQL 選択
Select
*
From Employee emp
left outside join
Sales
on
s.Employee_ID = emp.Employee_ID
標準 SQL の結果 (Linq to Entites を使用した正確な結果)
1 Emp1 1 1 150.00
1 Emp1 2 1 500.00
2 Emp2 3 2 250.00
3 Emp3 NULL NULL NULL
4 Emp4 NULL NULL NULL
5 Emp5 4 5 700.00
次に、Linq To Entities に取り組みます
Linq To Entities の結果 (Employee_ID 3 と 4 はどこにありますか)
1: Emp1: 150.0000
1: Emp1: 500.0000
2: Emp2:
250.0000 5: Emp5: 700.0000
左外部結合を使用して、Linq to Entities で試してください。
次に、DefaultIfEmpty を使用してこのエラーが発生します。
LINQ to Entities はメソッド 'System.Collections.Generic.IEnumerable 1[m12Model.Sales] DefaultIfEmpty[Sales](System.Collections.Generic.IEnumerable
1[m12Model.Sales])' メソッドを認識せず、このメソッドはストア式に変換できません。
Linq to Entites: DefaultIfEmpty() をサポートしていません。
.net - カウントを含むサブクエリで左結合を使用する Linq
SQL を linq 構文に変換するのに苦労しています。
CategoryID で相互に参照する 2 つのテーブル (Category と CategoryListing) があります。Category テーブル内のすべての CategoryID のリストと、CategoryListing テーブル内の対応するすべての一致の CategoryID のカウントを取得する必要があります。CategoryID が CategoryListing に存在しない場合でも、CategoryID が返される必要がありますが、頻度は 0 です。
次の SQL クエリは、期待される結果を示しています。