問題タブ [where-clause]
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 - table1 から選択します WHERE table2 にはすべての検索パラメータが含まれます
2 つのテーブル (メモとタグ) があります。タグにはメモへの外部キーがあります。1 つのメモ レコードに複数のタグ レコードが存在する場合があります。
目的のタグをすべて含むノートのみを選択しようとしています。
WHERE tag.name IN ('fruit','meat','vegetable') を使用すると、"fruit"、"meat"、または "vegetable" タグを持つすべてのメモが返されます。「果物」、「肉」、「野菜」の 3 つのタグがすべて含まれているノートのみを返したいと考えています。
複数のレコードを取得しても問題ありません (上記のクエリでは、各タグのレコードが生成されます)。
where句について助けが必要です。サブセレクトなしでこれを行うことは可能ですか?
linq-to-sql - Linq ToSql'WhereOr'演算子
フィールド(文字列)に実行時に提供された1つ以上の単語が含まれているかどうかを確認するクエリを作成する必要があります。
基本的に、WhereOrの質問をすることができる必要があります。これは、LinqToSqlを扱うときによくある問題のようです。
私は次のリファレンスを見つけましたが、それを理解することはできません-そして私のプロジェクトでそれをどのように使用するかわかりません。
私は次のループを試しました:
ただし、これにより、 WHEREAND句がWHEREORではないSQLクエリが作成されます。
c# - where句+引数で新しい制約を使用していますか?
次のようなコードがあります。
そして今、コードを変更して、SomeMicrosoftBaseClass のコンストラクターにブール値の引数を渡すことができるようにする必要があります。これは、構築時にのみ設定できます。
「new()」制約には public パラメーターのないコンストラクターが必要であり、インターフェイスを使用したり、SomeMicrosoftBaseClass を変更したりできなかったため、次のようにリフレクションを使用しています。
誰かがこれを行うためのよりエレガントな方法を提案できますか?
c# - C# での MSACCESS データベース接続を含む Where 句クエリの例
タイトルに似ています。Where句クエリを使用したOledb接続の例が必要です。
c# - 条件付きで構築された SQL where 句を LINQ に変換する
したがって、この質問に本当に答える質問はここにはありませんでした。linq に関する初心者の質問ですが、次の sql クエリ (C# を使用して作成) を linq クエリに変換できるかどうかを知りたいです。
それは理にかなっていますか?追加する where 句の条件を知らせる bool 変数がたくさんあります。まあ...これは醜いので、linqでそれをやりたいです。
zend-framework - Zend: WHERE 句で「等しくない」を使用する方法は?
次の zend コードを使用して、検証済み = 1 のテーブルからすべてのデータを選択しています。
いいえ、検証済みが「1」に等しくないテーブルからすべてのデータを選択したいと思います。次の方法を試しましたが、データをフェッチしていません。
「検証済み」列のデータ構造:
Zend の WHERE 句で「等しくない」演算子を使用する方法はありますか? ありがとう
c# - 複数の場所でクエリ
データベーステーブルでキーワード検索を実行するクエリを作成する必要があります。現在、コードは次のようになっています(ただし、ハードコードされたキーワードのセットがあります)。
ReSharperは、foreach内のキーワードに対して「変更されたクロージャへのアクセス」警告をスローします。エラーを理解し、生成されたSQLを確認して問題を確認します。
キーワードイテレータはループ中に変更されるため、私のSQLには最後の値( "charlie")への参照のみが含まれています。
この問題を回避するにはどうすればよいですか?新しいキーワードwhere句を適用する前に、クエリ可能なストーリーをリストに変換することもできますが、それは非効率的です。
解決済み
すべての答えをありがとう。最終的に、2つの別々の問題が発生しましたが、どちらも解決されました。
- 「変更されたクロージャへのアクセス」の問題を回避するには、foreach()ループ内でローカル変数を使用します。
- LINQKitのPredicateBuilderを使用して、OR句のリストを動的にアセンブルし、「任意の」スタイルのキーワード検索を可能にします。
mysql - MySQL で異なる条件を必要とする列を含むクエリを作成するにはどうすればよいですか?
ゲームの場合、( MySQLを使用して) 1 時間ごとにユーザーのサインアップ数をカウントしたいと考えています。そのようなものは非常に簡単です:
あとは、1回以上ゲームをプレイしたユーザーのみを考慮したいと思います。スコアを持つ2番目のテーブルがあります。
すばらしい...次のように、2 つのクエリの結果が 1 つのテーブルになるようにします。
これに対する有効なクエリはまだ見つかりません。ユニオンを使用する必要がありますか? それとも加入?
tsql - WHERE句の列を条件付きでフィルタリングする方法は?
OK、条件付き列の第 1 番目の質問:
いくつかのフラグ列の 1 つにマップされた入力パラメーターを受け取るストアド プロシージャを作成しています。要求された列をフィルタリングする最良の方法は何ですか? 私は現在 SQL2000 を使用していますが、SQL2008 に移行しようとしているので、最新のソリューションが利用可能であれば採用します。
sproc でクエリされたテーブルは次のようになります
そして、私は次のようなことをしたい
したがって、sproc を呼び出すと、exec uspMyProc @flag = 'foo'
行 1 と 4 が返されます。
括弧内の部分を SQL で直接実行できないことはわかっています。動的 SQL を実行するには、クエリ全体を文字列に詰め込み、WHERE 句で @flag パラメータを連結してから、文字列を実行する必要があります。動的 SQL を実行しているときに得られる汚れた感覚は別として、私のクエリはかなり大きい (数十のフィールドを選択し、5 つのテーブルを結合し、いくつかの関数を呼び出している) ため、すべてが 1 行であるため、非常に巨大な文字列になります。 3 行の WHERE フィルターで。
または、クエリのコピーを 4 つ用意し、CASE ステートメントでそれらの中から選択することもできます。これにより、SQL コードはそのまま実行可能になります (構文の強調表示などの対象となります) が、WHERE 句だけで CASE を使用できないため、大量のコードを繰り返すという犠牲が伴います。
他のオプションはありますか?適用できるトリッキーな結合や論理演算はありますか? それとも、それを乗り越えて動的 SQL を実行する必要がありますか?
tsql - where句でT-SQLのCASEを使用していますか?
ケースを使用して値を変更しようとしていますが、where句でチェックしていますが、エラーが発生しています:
キーワード「CASE」付近の構文が正しくありません
SQL Server 2005