0

私は自分のウェブサイトで実行しようとしているかなり単純なクエリを持っていますが、うまくいきません。私は 2 つの where 句を使用しています。はい、複数の where 句に関する他の多くの質問を見てきました。クエリははるかに複雑で高度であるため、私のクエリはそれらのクエリとは非常に異なっているため、実際には取得できません。私のために働く解決策。

これが私のクエリです。

SELECT * FROM ImpoundReports WHERE (UserId = @0 AND Released = 0)

クエリは「機能します」。エラーは発生せず、想定どおりにレポートが引き出されないだけです。

UserId は int です。リリースは少しです。

UserId = @0 は、Razor コードで使用されるスカラー変数です。

前もって感謝します。

4

2 に答える 2

1

Releasedが bitであるかどうかという質問を見ると、可能な値はtruefalse、およびnull (null が許容される場合) です。

したがって、可能な結果クエリは..

    SELECT * FROM ImpoundReports WHERE (UserId = @0 AND Released is null)
    SELECT * FROM ImpoundReports WHERE (UserId = @0 AND Released is true)
    SELECT * FROM ImpoundReports WHERE (UserId = @0 AND Released is false)
于 2014-09-05T09:30:29.583 に答える
0
SELECT * FROM ImpoundReports WHERE (UserId = @0 AND Released is null)

これで修正されました。「Released = 0」ではなく「Released is null」。

于 2014-09-05T08:08:10.837 に答える