Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL 2 where子句_Sql_Sql Server_Razor 3 - Fatal编程技术网

SQL 2 where子句

SQL 2 where子句,sql,sql-server,razor-3,Sql,Sql Server,Razor 3,我有一个相当简单的查询,我正试图在我的网站上执行,尽管如此,它还是不起作用。我使用了两个where子句,是的,我看到了许多关于多个where子句的其他问题,我的查询与他们的查询非常不同,因为他们的查询更复杂、更高级,所以我无法真正找到适合我的解决方案 这是我的疑问 SELECT * FROM ImpoundReports WHERE (UserId = @0 AND Released = 0) 这个查询“有效”,因为它没有给我任何错误,它只是没有像它应该的那样拉出报告 UserId是一个int

我有一个相当简单的查询,我正试图在我的网站上执行,尽管如此,它还是不起作用。我使用了两个where子句,是的,我看到了许多关于多个where子句的其他问题,我的查询与他们的查询非常不同,因为他们的查询更复杂、更高级,所以我无法真正找到适合我的解决方案

这是我的疑问

SELECT * FROM ImpoundReports WHERE (UserId = @0 AND Released = 0)
这个查询“有效”,因为它没有给我任何错误,它只是没有像它应该的那样拉出报告

UserId是一个int。 释放是有点

UserId=@0是我的Razor代码中使用的标量变量

先谢谢你

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

这把它修好了。“Released is null”而不是“Released=0”。

查看问题,如果Released为位,则其可能值为truefalsenull(如果可以接受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)

运行两个查询,其中每个查询都包含where子句的一部分。它们是否都给出了所需的结果?“UserId=@0”,这是否正确?这个问题不清楚,请澄清UserId和Released的数据类型,以及为什么使用@0?这是一个字符串吗?感谢您的快速回复,原来将release改为“Released is null”是有效的。我已经编辑了我的问题以获得数据类型,@0是我在C#中使用的标量变量。谢谢!!允许为null,因此使用Released是null修复了它。