問題タブ [subquery]

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

subquery - subquery pull - すべての行

すべてが 1 つのチケットに対応する複数の行を持つテーブルから情報を取得しています。チケットのどこかに MIlk の料金が表示されている場合、そのチケット番号に関連付けられているすべての行を確認したいと考えています。サブクエリを書き込もうとしましたが、うまくいきませんでした。何か案は??

例:

アイテムのコスト

  1. 山芋 1.0
  2. ビーンズ2.0
  3. ミルク5.0
  4. 山芋 1.0
  5. ビーンズ2.0
  6. キャンディ 1.0
  7. ビーンズ2.0
  8. 山芋 1.0
  9. ビーンズ2.0
  10. ミルク5.0
  11. ビーンズ2.0
  12. ミルク5.0
0 投票する
3 に答える
16461 参照

sql - MySQL の左結合で関連する行の数を取得するにはどうすればよいですか?

私は2つのテーブル、vehicle列を持つテーブルを持っています:

  • id
  • stock
  • year
  • make
  • model

およびimages列を持つテーブル:

  • id
  • vehicle_id
  • name
  • caption
  • default tinyint(1)

車両の情報、デフォルトの画像、および車両にある画像の総数をリストしようとしています。現在、私は次のSELECTステートメントを使用しています。

私は最初に使用していました:

ただし、データベースにデフォルトの画像があるかどうかに応じて、画像の数は1または0になります。UNIONおよび他のSELECTステートメントを使用してみましたが、まだ適切な結果を得ることができません。SELECT2 つのステートメントを使用する必要がありますか、または or で処理する別の方法はありますJOINUNION?

0 投票する
6 に答える
9639 参照

sql - SQL SELECT: サブクエリを使用して 3 つのテーブル間でデータを結合およびグループ化する

長い質問で申し訳ありませんが、あまり説明的なタイトルではありませんが、私の問題を簡単に説明するのは非常に困難です。

3 つのデータベース テーブルがあります。

テーブル AI の STATUS = 'OK' 行ごとに、最新の作成時刻を持つ C の対応する行を検索します。

最初に、STATUS = 'OK' であるテーブル A からすべての行を取得できます。
次に、テーブル B から対応するすべての行を取得できます。
しかし、そこから続行するにはどうすればよいでしょうか。

例えば:

次のようなものを返すことができます:

CID 2 の作成時間が CID 3 よりも遅く、CID 6 が CID 5 よりも新しいとします。これは、正しい結果がテーブル C の行 1、2、4、および 6 であることを意味します。

これをクエリで表現する方法はありますか?

編集: 申し訳ありませんが、具体的ではありませんでした。取得したいのは、テーブル C の CID です。

編集:さまざまなソリューションで返された行を数えました。結果は非常に興味深く、多様化しました:
HAINSTECH: 298,473 行
JMUCCHIELLO: 298,473 行
RUSS CAM: 290,121 行
CHRIS: 344,093 行
TYRANNOSAURS: 290,119 行

返された行を詳細に分析する時間はまだありませんが、どのクエリが「壊れている」のか、そしてその理由について意見をいただければ幸いです。

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

linq - LINQを使用したサブクエリでの高度な複数結合

次のクエリをLINQに変換する方法について頭を悩ませようと午後を過ごしましたが、そこにたどり着くことができません。

クエリの目的は、2つのフォールバック言語を使用してテーブルからデータをフェッチすることです。したがって、データが言語1に存在しない場合は、言語2でフェッチされ、2が存在しない場合は、言語0でフェッチされます。グローバル翻訳。

内部クエリをほぼ正しく取得できます(id1.language = 1を除いて、参加しているテーブルのメンバーに参加させることができないようです、何かアイデアはありますか?)

これは私のコード(LINQPadコード)です:

これにより、次のSQLが生成されます。

しかし、これを残りのクエリと組み合わせることができません。たぶん、購入するのに疲れているだけで、多くのCROSSAPPLYを実行し続けています。誰か提案はありますか?

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

subsonic - SubqueiresのSubsonicでクエリを作成するにはどうすればよいですか?

subsonic 2.2で次のクエリを実行するにはどうすればよいですか?

例を教えてもらえますか。

ありがとう。nRk

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

c# - NHibernate - ICriteria を使用してサブクエリに参加する

NHibernate の ICriteria API を使用して表す必要がある SQL クエリがあります。

これまでの試みには、'User' および 'DailyInfo' クラス (私のエンティティ) のマッピングと、DailyInfo オブジェクトを User オブジェクトのプロパティにすることが含まれていました。ただし、それらの間の外部キー関係をどのようにマッピングするかはまだ謎です。

Web での解決策は、通常、WHERE 句内のサブクエリを使用することですが、結合しない行に対して NULL 値が返されるようにするために、代わりにこのサブクエリで結合を残す必要があります。

外部クエリに基準を使用し、サブクエリを表すために DetachedCriteria と「結合」を形成する必要があると感じていますか?

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

java - サブセレクトのプリミティブ整数のリストを取得するための休止状態

Hibernate を使用して、テーブルの 1 つの列から (プリミティブ) 値のリストを返す方法はありませんか? 特定のフィールドが別のテーブルのIDのリストにない行のみが必要なサブセレクトにこれが必要です。

0 投票する
10 に答える
103921 参照

sql - T-SQL サブクエリ Max(Date) と結合

複数のテーブルを結合しようとしていますが、テーブルの 1 つに異なる日付の partid の複数のレコードがあります。最新の日付でレコードを取得したい。

以下にいくつかのテーブルの例を示します。

特定の部品の最新の価格を知りたい場合は、次のようにします。

ただし、最初に結合を行い、1 つだけでなくすべての部品の正しい価格を取得したいと考えています。これは私が試したことです:

テーブル全体の最高価格日を使用するため、結果は間違っています。

それはエラーになります。

望む結果を得るにはどうすればよいか。

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

sql - MS ACCESSのサブクエリ:日付ごとに「人」ごとに1つのレコードのみを選択します

MicrosoftAccessでanalyzedというテーブルを使用しています。多くのフィールドがありますが、この場合のフィルタリングに使用されている3つのフィールドはanalyzed.readings_miu_id、analyzed.ReadDate、analyzed.ReadTimeです。readings_miu_idがグループ化され、ReadDateでソートされている「分析済み」テーブルからレコードをプルする必要がありますが、ReadTimeで最も高い値になる可能性があるその日付の最後のエントリのみが表示されます。クエリを作成しました:

*????***はここに何を置くべきかわからないことを示すために使用されています

有効なreadings_miu_idを入力すると、そのreadings_miu_idの時間が最も長いレコードが1つ取得されます。

上記のようなサブクエリを使用して、ReadDateごとにreadings_miu_idごとに最後のReadTimeのみをプルするにはどうすればよいですか?

readings_miu_idはテーブルIDではなく、アイテム番号または名前に似ています

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

sql - MS Access クエリで内部結合を使用して、「人」ごと、日付ごとに 1 つのレコードのみを選択するにはどうすればよいですか?

2 つのテーブルからデータを取得する必要があります:Neptune_FN_Analysisとという名前のNeptune_prem 3 つのフィールドreadings_miu_id(人の名前または項目番号に相当)、ReadDateReadTime(すべてが にありますNeptune_FN_Analysis) があります。一部readings_miu_idの には複数の が複数日含まれていますが、1 日ReadTimeごとに入力された「前回」のみを取得したいと考えています。選択した範囲のエントリ日を持つ すべての s が必要ですが、プルしている各レコードには最後に入力されたものだけが必要です。readings_miu_id
readings_miu_idReadTime

1つのテーブルに基づくこれまでの私の解決策は次のとおりです。

このソリューションを適応させようとするとFROM [tableName] as A, INNER JOIN、エラーが発生するため実行できません。私の前任者が作成した元のコード (これは私が適応/修正しようとしているものです) は次のとおりです。