問題タブ [in-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.
sql - この MySQL クエリの何が問題になっていますか? SELECT * AS `x`、後でもう一度 x を使用するには?
次の MySQL クエリ:
…エラーを返します:
ここで何が間違っているのかわかりません。これsID
は列ではなく、 を実行して作成した「エイリアス」(これを何と呼びますか?) です(select siteID from users where userID = uID) as sID
。そして、それはIN
サブクエリの中にもありません。
何か案は?
編集: @Roland: コメントありがとうございます。actions
、およびの 3 つのテーブルがusers
ありsites
ます。テーブルには、テーブルのエントリに対応するフィールドactions
が含まれています。このテーブル ( ) 内のすべてのユーザーには、. テーブルから最新のアクションを選択し、テーブルにリンクして、それらのアクションを誰がどのサイトで実行したかを調べようとしています。それが理にかなっていることを願っています:)userID
users
users
siteID
actions
users
sites
sql - WHERE ... IN (サブクエリ) を使用するよりも、この SQL を記述する良い方法はありますか?
WHERE ... IN (サブクエリ) を使用するよりも、この SQL を記述する良い方法はありますか?
特定の再販業者の下で、再販業者/エージェントの詳細を含むすべてのデバイスのリストを取得しようとしています。これには、リセラーに直接割り当てられたデバイスと、リセラーの下のエージェントに割り当てられたデバイスが含まれます。reseller.id は一意です。postgresql データベースで実行されます。
デバイスはエージェントとリセラーの両方に割り当てられます。エージェントは再販業者に割り当てられます。
このクエリは機能しますが、JOIN で OR を使用することはあまりなく、通常はサブクエリを避けようとします。このクエリの概念は頻繁に使用されるため、何かを見落としていないことを確認したいと思います。
フィードバックをお寄せいただきありがとうございます。
mysql - サーバーがハングする原因となるMySQLサブクエリ
次のクエリを実行しようとしています
外側のクエリは約4000の応答を返し、内側のクエリは29を返します。Webサーバーで実行しても何も起こらず、ローカルでテストしたところ、mysqlは100%CPUを使用し、それでも何も達成しませんでした。サイズが原因でしょうか?
具体的には、サーバーが永久にハングする原因になります。クエリを実行したWebサーバーは、それが原因でクラッシュしていると確信しています(うわー)。
linq-to-sql - LINQサブクエリIN
私はIQueryable、ラムダ式、および一般的なLINQの初心者です。次のようなwhere句にサブクエリを配置したいと思います。
サンプルコード:
これをLINQで翻訳するにはどうすればよいですか?
sql - SQL サブクエリは、ハードコーディングされた IN 条件に一致しますが、サブクエリには一致しません
私はテストを受けた人々のグループを持っています。次のクエリで ID を選択できます。
これらの個人のレコードを人口統計テーブルから取得したいので、次のサブクエリを試しました。
...しかし、私は何の結果も得ていません。(関数) サブクエリからいくつかの ID を取得し、それらを IN 基準にハードコードすると、次のようになります。
...クエリは機能します。ここで本当に基本的なことが抜けているに違いありません - それが何であるか知っていますか?
考えられる複雑な要因: t.person_id は char13、d.person_id は varchar50 です。これは MS SQL Server 9.0.4035 です。私は SQL Server Management Studio で作業しています。
sql - MySQL:複数のサブクエリで「In」を使用しますか?
私はこのクエリを使用しようとしています:
エラーが発生します:
MySQL ですべてのサブクエリの結果をマージし、メイン クエリの IN 句として共通の値を使用するようにしたいと考えています。
したがって、最初のサブクエリが 1,2,4 を返し、2 番目のサブクエリが 2,3,4 を返す場合、"in" 句は次のようになります。
2 と 4 は、2 つのサブクエリに共通する値であるためです。
これは1つのクエリで可能ですか?
アップデート:
質問をもう少し明確にしようと思います。
結果は、指定されたフィルターが特定の値に設定されているすべてのページを返す必要があります。これには、クエリの一部ではない追加のフィルターが設定されているページが含まれます。言い換えれば、特定のフィルターが配置されたページにいて、ここから移動できるすべてのページで同じフィルターがあり、さらに 1 つのフィルター セットが追加されているページを表示します。
説明するのは少し難しいですが、同じフィルター ID に対して異なる値を持つページではなく、他のフィルター セットを持つページを含む結果セットを探しています。
したがって、この例では、フィルター 1 が値 2 に設定され、フィルター 7 が 57 に設定されているすべてのページが必要です。また、他のフィルター (1 と 7 以外) が割り当てられているページも必要ですが、フィルター 7 が値 2 に設定されているページは必要ありません。 57 以外の値、およびフィルター 1 が 2 以外の値に設定されているページではありません。
サンプルデータで更新
Pages_Filters:
ページ:
この場合、「フィルター 2 が 5 に設定され、フィルター 7 が 57 に設定され、フィルター 9 が 141 に設定されているページはどれか」と尋ねることができるはずです。
答えは「297のみ」のはずです。
mysql - INサブクエリをJOINとして書き換えます
MySQLでINを使用した場合、パフォーマンスが向上したことは一度もありません。また、パフォーマンスの問題が発生しました。
ビューを作成しようとしています。その関連部分は次のとおりです。
基本的には、お客様にメモが付いているかどうかを知りたいだけです。ノートの数は関係ありません。JOINを使用してこれを書き換えて高速化するにはどうすればよいですか?
顧客テーブルには現在150万行あるため、パフォーマンスが問題になります。
mysql - 条件としてサブクエリを使用したMySQLDELETEFROM
私は次のようなクエリを実行しようとしています:
おそらくお分かりのように、同じtidに他の親がある場合は、1015への親関係を削除したいと思います。ただし、構文エラーが発生します。
ドキュメントを確認し、サブクエリを単独で実行しましたが、すべて確認されているようです。誰かがここで何が悪いのか理解できますか?
更新:以下で回答するように、MySQLは、削除するテーブルを条件のサブクエリで使用することを許可していません。
jpa - JPA 2.0、Criteria API、サブクエリ、式内
IN
サブクエリと式を含むクエリステートメントを何度も作成しようとしました。しかし、私は成功したことがありません。
私は常に例外を取得します、「キーワード 'IN' 付近の構文エラー」、クエリステートメントは次のように構築されました。
「IN」が負ける前に単語を知っています。
そのようなクエリを書いたことがありますか? なにか提案を?
sql - 「IN」サブクエリを使用したSQLselectは、サブクエリにNULLが含まれている場合、レコードを返しません。
私はこの興味深い行動に出くわしました。左結合が進むべき道だと思いますが、それでもこれをクリアしたいと思います。それはバグですか、それとも設計による動作ですか?説明はありますか?
左側のテーブルからレコードを選択すると、右側のテーブルのサブクエリの結果に値が存在しない場合、サブクエリの結果にnullが含まれていると、予期される「欠落している」レコードは返されません。このクエリを作成する2つの方法は同等であると期待していました。
ありがとう!
与える: