問題タブ [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.

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

mysql - Count() Where 句と Left Join を使用

次のようなクエリがあります。

SELECT users.id FROM users LEFT JOIN sales ON installations.customer = users.id

私が言いたいのは、「WHERE count(sales.id) > 4」のようなものです。これは、ユーザーが 4 つ以上の販売関連を持っている場合を意味します。私がこれを間違った方法で行っているかどうかはわかりませんが

0 投票する
9 に答える
23421 参照

sql - 結合基準またはより効率的なwhere句のSQLフィルター基準

2つのテーブルを結合する比較的単純なクエリがあります。「Where」基準は、結合基準またはwhere句として表すことができます。どちらが効率的か疑問に思います。

クエリは、セールスマンが最初から昇進するまでの最大売上を見つけることです。

ケース1

ケース2

注ケース1には、where句がまったくありません。

RDBMSはSQLServer2005です

編集 結合基準の2番目の部分またはwhere句がsales.salesdate<ある固定日であった場合、2つのテーブルを結合する基準が実際にはないため、答えが変わります。

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

sql - SQL Server 2008 - ブール変数変更クエリ

次のクエリがあります。

これにより、過去 30 日間に表示されたすべての製品が返されます。

私の質問は、p.LastSeen > GETDATE() - 30条項が@IsStocked = true.

これはより大きなクエリの一部であり、IF/ELSE ステートメントを使用せずにこれを実現したいと考えています (つまり、WHERE 句@IsStocked = falseのセクションが完全に無視される場合)。p.LastSeen > GETDATE() - 30

ありがとう!

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

sql - 「select ステートメントの where 句は、1 つの列に対してのみ >、>=、<、<= 操作を実行できる」とはどういう意味ですか?

Google App Engine に関するウィキペディアの記事によると:

select ステートメントの where 句は、1 つの列に対してのみ >、>=、<、<= 操作を実行できます。したがって、単純な where 句のみを作成できます。

これは何を意味するのでしょうか?

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

sql - 私の単純なSQL更新クエリが正しく機能していません:(

単一の行を更新しようとしている単純な SQL クエリがあります。コードはLinq-to-sqlコードからのものです(Profilerを使用して取得しました)が、ソース(L2S)について心配しないでください...それは質問とは無関係です。

ここで、where 句を使用して更新しようとすると、0 行が更新されます。

次にselect、同じwhere clause. 私は単一の結果を返します。よし、データはある。

where clause statementsクエリが最終的に機能するのは、一部をオフにしたときだけです。私はそれを取得しません:(

私は本当にそれを説明することはできません。だから私はこれを示すビデオを作りました。

こちらの YouTube でビデオをご覧ください。

誰でも助けることができますか?それは本当に奇妙です:(

データベースは MS-SQL 2008 です。

- アップデート

実行しようとしているSQL(L2Sからクリーンアップした後)..

(注:はい、NOT(blah = 1))は奇妙ですが、それを作ったのはL2Sです。

更新 2:

ビデオのコードは、トランザクション/ロールバック トランスで実行されています。これは、機能する奇妙なシナリオの1つを実行すると、変更が機能することを意味します..しかし、ロールバックはそれを元に戻します..そのため、2回目に実行すると..元の値がdb行に返されます.

また、ビデオでは、選択クエリは更新クエリとまったく同じではありません..私は非常に多くの順列を(運がなくても)試してきたため..ビデオを作成するまでに..表示するのを忘れていました元のコード。そうは言っても、selectステートメントとupdate / whereステートメントの両方の同じコード(マシンにコピー/貼り付けたとき)は、まったく同じ問題を再現します:(

更新 2 :)

Lieven の要求に従って、コードと結果を示すスクリーンショットを次に示します。

代替テキスト http://img196.imageshack.us/img196/7111/lieven.png

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

c# - C#, Linq to Sql: Why can I not use an expression to filter SubEntities?

I have made myself an ExpressionBuilder class that helps me put together expressions that can be used as a predicate when doing Linq to Sql queries. It has worked great. However, I just discovered Expressions can only be used to filter on Tables, and not on EntitySets??Why on earth is this the case?

For example if I have Company and an Employee with a Salary. I could create these two expressions:

I would then expect to be able to do the following, however it only partially works:

Also, if I do a ep.Compile() it compiles, but then I get an error when running the query.

Why is this the case? Am I missing something? I don't find this logical. Can I fix this somehow? Or do you have a good workaround?

I know that I in this case could just use Where(x => x.Name.StartsWith("John")) instead, but the problem is that the expressions I need are not that trivial. They are longer strings of AndAlsos and OrElses.

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

c# - 一致がない場合のLINQの結果は?

一致するものがない場合、LINQ 関数は正確に何を返しますか? たとえば、Where メソッドを使用します。

この時点での結果はどうなるでしょうか。

0 投票する
5 に答える
18251 参照

sql-server - T-SQL Where句のCaseステートメントの最適化(StoredProcのオプションのパラメーター)

私はこれとしばらく戦っています。フィルタリングに使用される3つのパラメーターを受け取るストアドプロシージャがあります。特定の値が渡された場合、それをフィルタリングしたいと思います。-1が渡されたら、全部ください。

私はそれを次の2つの方法で試しました:

最初の方法:

2番目の方法:

私はどこかで、2番目の方法が短絡し、trueの場合は2番目の部分を評価しないことを読みました。私のDBAは、テーブルスキャンを強制すると言いました。私はこれを確認していませんが、場合によっては実行が遅くなるようです。

このビューが選択するメインテーブルには約150万のレコードがあり、ビューは他の約15のテーブルに結合して、他の多くの情報を収集します。

これらの方法はどちらも遅いです...私を瞬時から2〜40秒のどこかに連れて行ってくれますが、これは私の状況ではまったく受け入れられません。

それを特定の対-1のそれぞれの別々のケースに分解することを含まないより良い方法はありますか?

どんな助けでも大歓迎です。ありがとう。

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

mysql - MYSQL IN または複数の条件

status特定の値を持たないフィールドに基づいてレコードを返す単純なクエリがあります。引数として、フィールドが値 1、2、3...10 を持つことができ、値 3、7、9 を持たないすべてのレコードを返したいとしましょう。次のうちどれを使用するのが最適でしょうか?

オプション1。

オプション 2。

助けてくれてありがとう。